structure.component.html
使用 <router-outlet>
报错, 是什么原因?
在外部的 app.component.html
是正常的
在 app.module.ts
里面引入了 LayoutModule
在 layout.module.ts
里面引入了 StructureComponent
以下是详细代码
app.module.ts
import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { LayoutModule } from './layout/layout.module';
import { SharedModule } from './shared/shared.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
AppRoutingModule,
LayoutModule,
SharedModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
app-routing.module.ts
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { DemoModule } from './demo/demo.module';
import { StructureComponent } from './layout/structure/structure.component';
import { TestModule } from './test/test.module';
const routes: Routes = [
{
path: '',
component: StructureComponent,
children: [
{
path: 'demo',
loadChildren: () => DemoModule
}
]
},
{
path: 'test',
loadChildren: () => TestModule
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
layout.module.ts
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { SharedModule } from '../shared/shared.module';
import { StructureComponent } from './structure/structure.component';
@NgModule({
declarations: [
StructureComponent
],
imports: [
CommonModule,
SharedModule
]
})
export class LayoutModule { }
文件结构
已解决
<router-outlet></router-outlet>
组件是依赖AppRoutingModule
的AppRoutingModule
没有引入, 所以<router-outlet></router-outlet>
找不到layout.module.ts