是否必须在Angular 2 AOT编译中编译ngfactory文件?

时间:2016-10-12 13:11:20

标签: angular typescript angular2-aot angular-compiler-cli

每当我使用ngc编译Angular 2应用程序时,它会为每个组件创建.ngfactory.ts个文件,然后将所有的typescript编译为javascript。

然而,当我第一次运行'ngc'时,它会创建ngfactory个文件,但只会将其他文件编译为javascript。这意味着不会生成编译的ngfactory个javascript文件。

第二次运行时,它也会编译ngfactory文件(可能是因为它们是在与源相同的文件夹中生成的)。

我的问题是:是否应该编译ngfactories本身?它会以任何方式影响应用程序吗?

1 个答案:

答案 0 :(得分:2)

ngfactory文件已经是编译输出,所以你不应该再次编译它们。

最好为ngfactory.ts文件指定一个特殊目录。 把它放在你的tsconfig.json

"angularCompilerOptions": {
  "genDir": "compiled"
}

这将告诉ngc将生成的文件放入compiled文件夹。