我已经使用ngc编译器成功创建了.ngfactory文件,并且还使用“platformBrowser()。bootstrapModuleFactory(AppModuleNgFactory)”更新了我的main.ts。
app.routes.ts
const appRoutes: Routes = [
{ path: '', loadChildren: 'app/starter/starter.module#StarterModule' },
...
...
...
];
export const appRoutingProviders: any[] = [
];
export const routing: ModuleWithProviders = RouterModule.forRoot(appRoutes);
现在,当我使用“ng build -prod&& ng serve -prod”提供我的应用程序时,它成功托管。 但是,当我在浏览器上打开它时,我的控制台会向我显示此错误 “EXCEPTION:Uncaught(in promise):错误:无法找到模块'app / starter / starter.module.ngfactory'。”
当我检查我的目录时,文件“确实”存在但它无法找到它。 有没有人面对这个问题?如果是,那么如何解决呢?感谢。
我正在使用Angular-cli beta 14。
答案 0 :(得分:1)
aot输出只接受你在tsconfig-aot.json中的files-array中添加的文件。所以一定要在那里添加所有模块,包括那些延迟加载的模块。因为它们不再包含在应用程序本身的路由器中的“loadChildren”中。
"files": [
"app/app.module.ts",
"app/starter/starter.module.ts",
"app/main.ts" ],
之后在AoT文件夹中应该编译所有模块。之后,您可以将输出放在“aot”文件夹(或构建编译的文件夹)中,并进行树形图等。
这方面的一个例子,但没有angular-cli,使用webpack可以在这里找到: