HTTP 404 из unpkg при использовании SystemJS
В настоящее время я использую SystemJS для динамического импорта пользовательских модулей во время выполнения как часть системы плагинов. Я преуспел в начальном импорте, однако мой подход быстро терпит неудачу при попытке импортировать пакеты зависимостей с https://unpkg.com/.
Я загрузил простой изолированный образец в Plnkr, чтобы продемонстрировать свою проблему, в надежде, что кто-нибудь сможет помочь мне выяснить причину и последующее решение.
SystemJS.config({
paths: {
'npm:': 'https://unpkg.com/'
},
map: {
'rxjs': 'npm:rxjs'
}
});
SystemJS.import('rxjs')
.then(function () {
console.log('rxjs has been loaded');
})
.catch(function (error) {
console.error(error);
});
При запуске, если вы посмотрите на вывод консоли или трассировку сети (я также записал некоторые выходные данные на веб-страницу), вы увидите серию запросов GET на сервер unpkg для загрузки пакетов, которые, как я полагаю, требуются для rxjs (пакет, который я пытаюсь импортировать в моем примере, чтобы продемонстрировать проблему). Я попытался переназначить внутренние библиотеки, которые зависят от другого URL-адреса, который не возвращает 404, но, похоже, не имеет никакого эффекта. Я также попытался вручную просмотреть пути в выходных данных консоли, и я вижу, что unpkg действительно не может их найти. Поэтому я предполагаю, что где-то существует несоответствие с ссылками на зависимости, запущенными в SystemJS, и путями, которые предлагает unpkg.
Я новичок в SystemJS, так что это может быть просто недоразумение с моей стороны. Любая помощь будет оценена.
1 ответ
Вы можете попробовать связать его непосредственно с индексным файлом:
{
map: {
'rxjs': 'npm:rxjs/index',
'rxjs/*': 'npm:rxjs'
}
}
Работал для меня с вашим примером Plunkr.