Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.02.2020, 17:48
Аспирант
Отправить личное сообщение для zava75 Посмотреть профиль Найти все сообщения от zava75
 
Регистрация: 13.07.2018
Сообщений: 34

Подключение import в js коде
Добрый день всем. Скажите как правильно и можно ли подключить с удаленного репозитория js в самом js файле .
Например есть //web.com/js.js
есть в сайте подключения к main.js в самом main.js как можно подключить //web.com/js.js ?
Ответить с цитированием
  #2 (permalink)  
Старый 03.02.2020, 18:37
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

https://requirejs.org/
Ответить с цитированием
  #3 (permalink)  
Старый 04.02.2020, 07:00
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Poznakomlus, я вам не рекомендую использовать https://requirejs.org/, поскольку он заставляет писать нестандартный код. И тем более в JS есть понятие модуля (ключеные слова import и export) https://requirejs.org/ выглядит как костыль!

Сообщение от zava75
есть в сайте подключения к main.js в самом main.js как можно подключить https://web.com/js.js?
Если https://web.com/js.js ведёт к модулю, который что-то экспортирует, то вы можете его подключить при помощи ключевого слова import. Например...

файл main.js
import myObject from "https://web.com/js.js";

// тут можно использовать ваш myObject
(Если вам нужна поддержка старых браузеров, то вы можете использовать parcel)


Если https://web.com/js.js ведёт к файлу, который содержит скрипт, который объявляет что-то глобально (и ничего не экспортирует), то вы можете его подключить при помощи функции import. Например...

файл main.js
import("https://web.com/js.js").then(() => {
	// тут можно использовать ваш глобальный объект
});

Последний раз редактировалось Malleys, 04.02.2020 в 08:45.
Ответить с цитированием
  #4 (permalink)  
Старый 04.02.2020, 12:31
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Malleys,
Он был одно время популярен и в нем была возможность работы с разными типами модулей. Рейтинг 12,4 k GitHub
То, что вы рекомендуете оправдано в разаработке современных разработок откидывая старые версии броузеров
Когда то import небыло, тем более parcel. И сейчас совместимость с браузерами бывает отталкивает.
Ранее использовал нечто подобное

var loader = (function (src, callback) {
    var doc = window.document, cache = {};
    return function (src, callback) {
        if (cache.hasOwnProperty(src)) {
            callback && (callback());
        } else {
            var el = doc.createElement('script'), loaded = 0;
            el.src = src, doc.body.appendChild(el), cache[src] = 1;
            if (callback) {
                el.onload = el.onreadystatechange = function () {
                    if ((el.readyState && el.readyState !== 'complete' && el.readyState !== 'loaded') || loaded)
                        return false;
                    el.onload = el.onreadystatechange = null, loaded = 1, callback();
                };
            }
        }
    };
}());
loader('test1.js', me);
function me() {
    alert('This callback Me');
}

Последний раз редактировалось Vlasenko Fedor, 04.02.2020 в 12:38.
Ответить с цитированием
  #5 (permalink)  
Старый 04.02.2020, 12:47
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

Если постоянно думать о браузерах 5-ти летней давности и старше, то почти ни чем нельзя пользоваться.
Ответить с цитированием
  #6 (permalink)  
Старый 04.02.2020, 12:54
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

voraa,
это да, но вебкомпоненты в пример мы ждем очень долго иначе большинство фреймворков пошло в утиль
зачастую перед разработкой смотрят процент использования браузеров и ставят в версси тз минимальные значения.
и есть полифилы, и RequireJS works in IE 6+, Firefox 2+, Safari 3.2+, Chrome 3+, and Opera 10+.
Ответить с цитированием
  #7 (permalink)  
Старый 04.02.2020, 13:15
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

Сообщение от Poznakomlus Посмотреть сообщение
voraa,
IE 6+, Firefox 2+, Safari 3.2+, Chrome 3+, and Opera 10+.
И каков % таких браузеров?
Ответить с цитированием
  #8 (permalink)  
Старый 04.02.2020, 13:22
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

Мне кажется, что сознательная ориентация на старье не побуждает пользователей обновлять браузеры.
По мне нормально, если разработчик ориентируется на сегодня - 3 года.
Если на платформе существуют хотя бы пара браузеров, которые поддерживают технологию или api, то на них и нужно ориентироваться.
Ответить с цитированием
  #9 (permalink)  
Старый 04.02.2020, 13:31
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Сообщение от voraa
не побуждает пользователей обновлять браузеры
есть sandbox системы
вы спрашиваете процент старых браузеров, я привел данные из документации это минимальные версии браузеров
Сообщение от voraa
на платформе существуют хотя бы пара браузеров
здесь не понял совсем
понятно, что все мы разрабатываем с учетом современных технологий, но если стоит задача поддержка старых версий то это да решение
Ответить с цитированием
  #10 (permalink)  
Старый 04.02.2020, 13:40
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

[quote=Poznakomlus;519616
здесь не понял совсем
[/QUOTE]
Зачем ориентироваться на ИЕ6-11, Когда в Винде есть Хром, Опера, Лис? Совершенно бесплатные.
И почему ИЕ6, а не ИЕ4 или НетскэйпНавигатор

Ну представьте, если бы производители игр (или более нужных программ) ориентировались на Вин-95 на Пентиуме-4? Но сайтопрограммеры почему то принуждают себя (или принуждаются) к этому.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывыод контента через JS inet_boy Элементы интерфейса 0 18.11.2013 03:00
Ошибка в коде Js, Неправильно работает скрипт. Julia Panatova Общие вопросы Javascript 1 19.01.2011 14:12
Ошибка в коде Js, Неправильно работает скрипт. Julia Panatova Общие вопросы Javascript 7 07.01.2011 13:41
Вопрос про подключение js prog90 Общие вопросы Javascript 4 03.01.2011 18:48
подключение стороннего js скрипта friend Общие вопросы Javascript 2 24.05.2008 19:51