angular - 当路由具有子模块时,Angular 应用程序无法有条件地加载路由
问题描述
我需要一种方法来构建启用或不启用“评论”的应用程序。所以我想我可以使用环境变量。
import { environment } from 'app/../environments/environment';
let routes: Routes = [
{ path: 'jobs', component: JobsComponent}
];
if(environment.enable_comments) {
// routes only for for the second app
routes.push(
{ path: 'jobs/comments', loadChildren: 'app/comments/comments.module#CommentsModule'}
);
}
@NgModule({
imports: [ RouterModule.forRoot(routes, {preloadingStrategy: PreloadAllModules }) ],
exports: [ RouterModule ]
})
奇怪的是,它有时有效,有时无效。它只在这条路线上失败 jobs/comments
core.js:15714 错误错误:未捕获(承诺):错误:找不到模块...
奇怪的是,当我删除条件时。我工作得很好。
const routes: Routes = [
{ path: 'jobs', component: JobsComponent},
{ path: 'jobs/comments', loadChildren: 'app/comments/comments.module#CommentsModule'}
];
@NgModule({
imports: [ RouterModule.forRoot(routes, {preloadingStrategy: PreloadAllModules }) ],
exports: [ RouterModule ]
})
我在这里感到困惑。
解决方案
推荐阅读
- mongodb - Spock:模拟 mongodb 批量更新,数组比较失败
- pine-script - 代码之间的时区转换
- java - Spring Boot 中的自签名证书和 SSL
- sql - 为什么 STATISTICS_NORECOMPUTE 会自行开启?
- ruby-on-rails - Rails gem resque-loner NameError(未初始化的常量 Resque::Plugins::UniqueJob)
- python - 在 python 中关闭异步服务器时出错
- excel - 每次使用 CommandButton_click 选择不同的单元格
- r - 使用 Reversible-Jump MCMC 贝叶斯方法在 R 中更改点包
- javascript - 如何降低画布动画的速度?
- python-3.x - 在声明 typing.NamedTuple 对象时提供额外的约束