Angular 8(现在到期)由于使用以下字符串格式来路由LoadChildren而弃用:
https://next.angular.io/api/router/LoadChildren中的type LoadChildren = LoadChildrenCallback | DeprecatedLoadChildren;
在使用JIT的DEV中,一切都很好,但是在尝试路由到该模块时,--prod中使用AOT的延迟加载模块会引发以下错误:
ERROR Error: Uncaught (in promise): Error: Runtime compiler is not loaded
我现在可以继续使用字符串格式并忽略弃用警告,但是最好能绕过弃用警告以及具有正常功能的代码。
工作字符串方法:
{
path: 'admin',
loadChildren: './admin/admin.module#AdminModule'
},
故障功能方法:
{
path: 'admin',
loadChildren: ():Promise<typeof AdminModule> =>
import('./admin/admin.module').then(m => m.AdminModule)
},
我最近的几个beta和rc都遇到了这个问题。
还有其他人找到解决方法吗?