typescript - 在 Angular 2 的 AOT 编译中,ngfactory 文件本身必须被编译吗?
每当我使用 ngc 编译 Angular 2 应用时,它会为每个组件创建 .ngfactory.ts 文件,然后将所有 TypeScript 编译为 JavaScript。
然而,当我第一次运行 ´ngc´ 时,它会创建 ngfactory 文件,但只将 其他 文件编译成 JavaScript。这意味着不会生成已编译的 ngfactory JavaScript 文件。
在第二次运行时,它确实也会编译 ngfactory 文件(可能是因为它们是在与源文件相同的文件夹中生成的)。
我的问题是:ngfactories 本身是否应该被编译?它会以任何方式影响应用程序吗?
答案#1
ngfactory 文件已经是编译后的输出,因此你不应再次编译它们。
最好为 ngfactory.ts 文件指定一个特殊目录。将其放在你的 tsconfig.json 中
"angularCompilerOptions": {
"genDir": "compiled"
}
这将告诉 ngc 将生成的文件放入一个 compiled 文件夹中。
