我使用命名的路由器插座时遇到了麻烦,我想虽然我假设我遵循了有角度的文档,但我认为它使用错了:
路由器配置:
const routes: Routes = [
{path: 'checktypes', component: ChecktypeComponent},
{path: 'checktypes/:id', component: ChecktypeDetailsComponent, outlet: 'checktypeDetails'},
];
ChecktypeComponent
的模板:
...
<router-outlet name="checktypeDetails"></router-outlet>
...
在ChecktypeComponent
(途中/checktypes
):
this.router.navigate([{outlets: {checktypeDetails: ['checktypes', 1]}}]);
为了简单起见,我对id 1进行了硬编码。我总是得到错误Cannot match any routes. URL Segment: 'checktypes/1'
。我尝试了很多东西,但我无法让它工作。我做错了什么?
答案 0 :(得分:0)
您可以使用以下
对于像
这样的路线{
path: 'update-book/:book-id',
component: BookUpdateComponent,
outlet: 'bookPopup'
}
您可以导航为
this.router.navigate([{ outlets: { bookPopup: [ 'update-book', book.id ] }}]);
这样您就可以将参数传递给URL,并且URL变为
http://localhost:4200/book(bookList:book-detail//bookPopup:add-book)