【发布时间】:2020-07-05 14:25:44
【问题描述】:
我是 Angular 和路由的新手,遇到了我从 body.component 调用 question.component 并想用 替换它的情况em>question.component 但出现错误。以下是我的代码
app-routing.module.ts
const routes: Routes = [
{
path: 'home', component: HeaderComponent,
children: [
{ path: '', component: BodyComponent, outlet:'secondary'},
{ path: 'ask', component: QuestionComponent, outlet:'secondary'}
]
},
];
app.component.html
<router-outlet></router-outlet>
header.component.html
<mat-toolbar class="mat-toolbars">
<span>Header</span>
<ng-template [ngIf]="!isLoggedIn">
<button mat-button [matMenuTriggerFor]="menu">Login<mat-icon>login</mat-icon></button>
</ng-template>
<mat-menu #menu="matMenu" xPosition="before" >
<span (click)="$event.stopPropagation();">
</span>
</mat-menu>
</mat-toolbar>
<div id="contentwrapper">
<div class="main_content">
<router-outlet name="secondary"></router-outlet>
</div>
</div>
body.component.html
每当我点击询问按钮时,它不会将 question.component 路由到 body.component
<mat-card class="card-container">
<button mat-raised-button color="success" [routerLink]="['ask']" skipLocationChange> <mat-icon>speaker_notes</mat-icon> </button>
</mat-card>
错误
core.js:9110 ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'home/ask'
Error: Cannot match any routes. URL Segment: 'home/ask'
at ApplyRedirects.noMatchError (router.js:3387)
at CatchSubscriber.selector (router.js:3351)
【问题讨论】:
-
还是不行
标签: angular angular8 angular-routing