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 заставляет компилятор загружаться в накопительный пакет.

Надеюсь это поможет.

Другие вопросы по тегам