我面临着为示范问题创建一个问题的问题。
我正在使用{ path: 'mod1', loadChildren: 'mod1.module#Mod1Module'}
作为我的路线。然后plunker试图加载这样的URL:
https://run.plnkr.co/XXXXXXXXXX/mod1.module
但它没有找到返回,所以我的探测器没有运行。
以下是plunker网址:https://plnkr.co/edit/Qd8MLYNQVS2NJ6vH3ZC6?p=preview
更新
我已经能够用这个plunker打开仪表板。 https://plnkr.co/edit/zgMigHSEFXxxwUp8QQzr?p=preview 当我尝试在模块1的第1页中导航时,它显示另一个错误。
答案 0 :(得分:2)
<强> mod1.module.ts 强>
@NgModule({
imports: [
Mode1RoutingModule, // <== add this line
FormsModule,
ReactiveFormsModule,
HttpModule,
CommonModule
],
declarations: [
routedComponents,
Mod1Page1Component,
Mod1Page2Component
],
providers: [
Mod1AbcService
]
})
export class Mod1Module { }
答案 1 :(得分:1)
无论如何,我使用loadChildren来延迟加载一个模块。它可能会对你有所帮助:
const routes: Routes = [
{path: 'emails', component: EmailsComponent},
{path: 'auxiliary', outlet: 'aux', component: AuxiliaryComponent},
{path: 'contacts', loadChildren: 'app/contacts/contacts.module#ContactsModule'},
{path: '**', redirectTo: 'emails'}
];
完整的Plunkr:http://plnkr.co/edit/ik9lQw971X638ZATLgHR?p=preview
编辑1:
我看了你的Plunkr,我得到了它的工作:
https://plnkr.co/edit/l9oijQwwnXD0mz5FI10h?p=preview
以下是我的所作所为:
- 将文件mod1.module.ts
重命名为src/mod1.module.ts
- 从redirectTo
更改为redirectTo: '/mod1/page1'
至redirectTo: '/mod1'
(您未声明路径'/mod1/page1'
,因此您无法执行此操作
- 使用这样的路径来延迟加载:{ path: 'mod1', loadChildren: app/mod1.module#Mod1Module'}