Angular AoT и Rollup - ошибка: компилятор времени выполнения не загружен
В течение последних 6 месяцев я создавал приложение для панели мониторинга с использованием Angular. У меня был действительно хороший рабочий процесс разработки, использующий компиляцию JiT и синхронизацию браузера gulp, чтобы получать мгновенные обновления при внесении изменений. Который работал отлично.
Я дошел до того, что я рад развертыванию рабочей версии, однако у меня возникли проблемы с AoT и накопительным пакетом.
Я следовал руководству angular.io, но получил следующее
ERROR Error: Uncaught (in promise): Error: Runtime compiler is not loaded
Error: Runtime compiler is not loaded
at _throwError (build.js:5036)
at Compiler.compileModuleAsync (build.js:5065)
at MergeMapSubscriber.project (build.js:34798)
at MergeMapSubscriber._tryNext (build.js:30450)
at MergeMapSubscriber._next (build.js:30440)
at MergeMapSubscriber.Subscriber.next (build.js:425)
at ScalarObservable._subscribe (build.js:846)
at ScalarObservable.Observable._trySubscribe (build.js:708)
at ScalarObservable.Observable.subscribe (build.js:696)
at MergeMapOperator.call (build.js:30415)
at _throwError (build.js:5036)
at Compiler.compileModuleAsync (build.js:5065)
at MergeMapSubscriber.project (build.js:34798)
at MergeMapSubscriber._tryNext (build.js:30450)
at MergeMapSubscriber._next (build.js:30440)
at MergeMapSubscriber.Subscriber.next (build.js:425)
at ScalarObservable._subscribe (build.js:846)
at ScalarObservable.Observable._trySubscribe (build.js:708)
at ScalarObservable.Observable.subscribe (build.js:696)
at MergeMapOperator.call (build.js:30415)
at resolvePromise (zone.js:769)
at resolvePromise (zone.js:740)
at zone.js:817
at ZoneDelegate.invokeTask (zone.js:424)
at Object.onInvokeTask (build.js:6048)
at ZoneDelegate.invokeTask (zone.js:423)
at Zone.runTask (zone.js:191)
at drainMicroTaskQueue (zone.js:584)
at ZoneTask.invoke (zone.js:490)
Я также использую несколько различных угловых плагинов, которые могут вызывать проблему (однако я не могу найти ссылку на проблему AoT), а именно MyDatePicker
а также MyDateRangePicker
, У меня также есть несколько библиотек JS, включая D3.js
а также momement.js
Итак, мой вопрос: есть ли что-то, что я делаю неправильно, из-за чего мой файл build.js выбрасывает во время выполнения компилятор не загружается?
Если у кого-то есть понимание этой проблемы, было бы очень полезно, если бы вам потребовались какие-то конкретные фрагменты кода, дайте мне знать, как я уже упоминал tsconfig-aot.json
а также rollup-config.json
по сути такой же, как в angular.io
заранее спасибо
1 ответ
Большое спасибо Юрзуи в комментариях за помощь в ответе на мой собственный вопрос.
Подход, который помог мне найти место загрузки компилятора времени исполнения, заключался в том, чтобы перейти в мой сгенерированный build.js и найти применение compileModuleAsync
, Я нашел это в loadChildren
Метод, после удаления его использования проект успешно запущен в браузере.
Однако я не уверен, почему loadChildren заставляет компилятор загружаться в накопительный пакет.
Надеюсь это поможет.