У меня есть простое угловое приложение, которое я пытаюсь скомпилировать с помощью AOT. Я НЕ использую угловой CLI . У меня есть собственный генератор, который поддерживает мой проект и поддерживает мои компоненты, сервисы и т. Д.
Все работает как положено до AOT. Когда я запускаю ngc для компиляции моего углового приложения, все компилируется без ошибок. Однако, когда я проверяю скомпилированные файлы ngfactory javascript, я вижу ссылку на @ angular / router / router.ngfactory из каталога node_modules. Кажется, я нигде не могу найти этот файл.
Моя конфигурация следующая:
- Узел v.10.10.0
- Угловой v.6.1.2
- Машинопись v.3.1.1
- SystemJS v 0.21.4
- Глоток v.3.9.1
Я создал образец репо, чтобы повторить проблему.
Репо находится на SlyGenerator.DemoWithAOT
Чтобы нормально запустить приложение с JIT, выполните следующую команду "npm run start-dev"
Воспроизвести ошибку
- Я запускаю "node_modules / .bin / ngc -p ./src/assets/ts/tsconfig.aot.json". Это создает папку "dist" на корневом уровне с файлами ngfactory.
- Затем я копирую содержимое папки dist в ./app/assets/js/ (Это позволяет мне тестировать сгенерированный код без объединения или минимизации.
- Затем я изменяю свой файл system.config.js, чтобы использовать файл Main.aot.js вместо файла Main.js. Файл System.config.js находится в .app / assets / config / system.config.js
В этот момент я получаю следующую ошибку:
SyntaxError: неожиданный токен <</p>
Я могу переключить файл system.config.js обратно на оригинал, и все снова работает нормально.