Angular 未能列出延迟路由:未知模块'/src/app/app.module#AppModule';
升级到Angular 9(从Angular 8)并运行Angular 未能列出延迟路由:未知模块'/src/app/app.module#AppModule';,angular,angular-cli,Angular,Angular Cli,升级到Angular 9(从Angular 8)并运行ng build 未能列出延迟路由时出错:未知模块。/src/app/app.module#AppModule。 似乎找不到主应用程序模块 这是我的main.ts文件: 从'@angular/core'导入{enableProdMode}; 从“@angular/platformBrowserDynamic”导入{platformBrowserDynamic}; 从“./app/app.module”导入{AppModule}; 从“./e
ng build
未能列出延迟路由时出错:未知模块。/src/app/app.module#AppModule。
似乎找不到主应用程序模块
这是我的main.ts文件:
从'@angular/core'导入{enableProdMode};
从“@angular/platformBrowserDynamic”导入{platformBrowserDynamic};
从“./app/app.module”导入{AppModule};
从“./environments/environment”导入{environment};
if(环境、生产){
enableProdMode();
}
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err=>console.error(err));
我已经创建了一个新项目,并且能够成功地运行它
这意味着从8变为9
您知道我需要更改什么吗?对于通过路由器延迟加载的模块,请确保您正在使用。在v9中删除了通过字符串导入。ng更新应自动处理此问题。了解有关angular.io的更多信息
在你的
应用程序routing.module.ts
中,你应该有这样的东西:
{
path: '/',
loadChildren: () => import('src/app/app.module').then(m => m.AppModule)
}
似乎也有类似的报道 可能的解决方案是在angular.json中设置
aot:true
p.S请参见
动态导入
不是v9的功能,它从v8开始就存在。如果是这种情况,他应该得到一个编译错误,但这是一个运行时错误。另外,如果您确实像ng update@angular/core
那样升级了原理图,它会自动处理动态导入
迁移。这确实是不同事物的组合。在我的例子中,angular.json和package.json必须更新,以使所有内容都能再次工作。