angular - Angular(7)加载错误的惰性模块
问题描述
以下是我热切的 HomeModule 中的路线,它位于 AppModule 的下方:
RouterModule.forChild([
{
path: '',
component: HomeComponent,
children: [
{
path: 'welcome',
component: WelcomeComponent
},
{
path: 'data',
loadChildren: '@libs/data#DataModule',
data: {
expectedPermission: environment.routePermissions.data
},
canLoad: [PermissionGuard]
},
// {
// path: 'data-two',
// loadChildren: '@libs/data/src#DataTwoModule',
// data: {
// expectedPermission: environment.routePermissions.dataTwo
// },
// canLoad: [PermissionGuard]
// },
{
path: '**',
redirectTo: '',
pathMatch: 'full'
}
]
}
]),
以下是 DataTwoModule 中的内容:
const routes: Routes = [
{
path: `maintain/edit/:id`,
component: DataTwoEditComponent
},
{
path: 'list',
component: DataTwoListComoponent
}
];
在数据模块中:
const routes: Routes = [
{
path: `maintain/edit/:id`,
component: DataEditComponent
},
{
path: 'list',
component: DataListComoponent
}
];
enableTracing 向我显示 url 已正确解析, NavigationEndBASEURL/home/data/list
尚未 Angular 为我呈现 DataTwoListComoponent。正如您在 HomeComponent 中看到的,我什至注释掉了 DataTwoModule 的路径。它怎么可能仍然提供?只有当我从 DataTwoModule 中注释掉路由时,Angular 才能正确地为我提供 DataModule。
组件链接正确(@libs 部分);该应用程序以前可以运行;我只是更改了一些路线名称。路由也不会从文件中导出,因此不会混淆。这里发生了什么?除了使用 enableTracing 之外,我该如何调试它?
解决方案
推荐阅读
- apache-spark - 为什么我无法在 Kubernetes (K8s) 集群上运行 sparkPi 示例?
- python - 将暗网编译为 dll
- javascript - 函数不能访问窗口对象吗?
- python - 如何将 TreeMap 和饼图添加为子图?
- ios - 如何解决此错误:“SKView:ignoreRenderSyncInLayoutSubviews 为 NO”?
- javascript - jQuery按类隐藏元素不会隐藏所有元素
- android - 模拟器:信息:QtLogger.cpp:68:警告:QOpenGLShader::compile(Fragment):错误:0:1:'GL_OES_EGL_image_external':不支持扩展
- javascript - 在没有 webview 的情况下快速评估 Javascript 代码
- javascript - javascript: 集合[id][prop] = 集合[id][prop] || [] //将空白数组分配给对象的问题
- c# - 我遇到了 InvalidCastException 异常