Угловой AOT и ленивая загрузка. TypeError: System.import не является функцией

Я использую Angular 4. После AOT и запуска накопительного пакета в ленивом модуле появляется такая ошибка:

Ошибка: не перехвачено (в обещании): TypeError: System.import не является функцией

Мой проект отлично работает в JIT, но в AOT я не мог перенаправлять на ленивые маршруты. Я не мог понять, почему возникает эта ошибка.

Как я могу исправить эту ошибку?

Спасибо.


person Mohsen    schedule 14.05.2017    source источник
comment
Причина ошибки в том, что он пытается использовать SystemJS для загрузки ленивых модулей, которых нет при работе в AOT. Однако я сам этого не пробовал, поэтому не могу сказать вам, какую альтернативу вам следует использовать. Поддерживаю свой вопрос.   -  person Peter Salomonsen    schedule 14.05.2017
comment
Можете ли вы предоставить свои файлы маршрутов   -  person virsha    schedule 05.07.2017
comment
Перейдите по этой ссылке - stackoverflow.com/questions/31462866/   -  person Abhishek Gangwar    schedule 26.01.2018
comment
проверьте свою версию машинописного текста. запуск npm install не должен показывать несоответствия между пакетами angular и машинописным текстом   -  person Phil    schedule 01.05.2018


Ответы (1)


Очень сложно дать окончательный ответ, не зная настроек вашего проекта или даже полной трассировки стека. Многие старые приложения angular используют system.js (я его ненавижу), свои собственные конфигурации веб-пакетов или интерфейс командной строки (мой любимый).

Я бы сказал, что в настоящее время я получаю эту ошибку в старом проекте, который я предлагаю использовать CLI.

WARNING in ./node_modules/@angular/core/fesm5/core.js 15201:15-36
System.import() is deprecated and will be removed soon. Use import() instead.
For more info visit https://webpack.js.org/guides/code-splitting/
 @ ./ClientApp/vendor.ts 11:0-23

Это заставляет меня думать, что, возможно, ваша проблема в файлах ядра angular (предположение без трассировки стека), и поэтому вы можете попробовать обновить файлы ядра angular.

person Craig    schedule 05.11.2018