@ngtools/webpack не собирается при импорте точки входа
Я использую @ngtools/webpack непосредственно в angular-app (без angular-cli), и у меня неожиданное поведение. Aot плагин собирает все ts-файлы в проекте, но некоторые файлы не импортируются файлом точки входа (main.ts). Для примера - ts-loader собирает только те файлы, которые найдены при импорте в файл точки входа (main.ts). Это ошибка или особенность?
Я создал мини-репо: https://github.com/alxpsr/ngtools-unexpected Запустите npm, запустите build: aot, и вы получили ошибку. Но если вы запустите npm, запустите build: tsloader - сборка не будет иметь ошибки.
Если это не ошибка, скажите, пожалуйста, в чем разница между этими двумя сборками?
PS Я знаю о файлах и включаю опцию в tsconfig.json и могу там более четко указать файлы. Я хочу понять различия между этими двумя сборками. ^_^
1 ответ
Обе сборки разные. При сборке с использованием AOT код компилируется с использованием углового компилятора. Он компилирует весь ваш код перед развертыванием, поэтому клиент-браузер не должен выполнять большую работу. Например, если вы вызвали функцию в HTML, но у вас нет функции, определенной в вашем компоненте, Angular Compiler выдаст ошибку при сборке самого приложения.
С другой стороны, при сборке с использованием tsloader сборка завершается успешно, но приложение разрывается во время выполнения при возникновении такой ошибки.