在角4”删除辅助路线
我见过一个例子,我有两个<router-outlet>
,其中只有一个具有name
属性 - 所以我做了一个小测试:在角4”删除辅助路线
我有这样的路由器映射:
export const routing = [
{path:'', pathMatch:'full', component:EmptyComponent},
{path:'dog', component:DogComponent},
{path:'bird', outlet:'under', component:BirdComponent}
];
而且我也有这个routerLinks
:
<li><a [routerLink]="['']">Clear</a></li>
<li><a [routerLink]="['dog']">Only Dog</a></li>
<li><a [routerLink]="['/', {outlets: {under: ['bird','' }}]">Only Bird</a></li>
<li><a [routerLink]="['dog',{outlets: {under: ['bird','' }}]">Dog & Bird</a></li>
<router-outlet></router-outlet>
<hr>
<router-outlet name='under'></router-outlet>
问:
如果我点击Clear
- 我看没有(✓)
如果我再单击Only Dog
- 我只看到一只狗(✓)
如果我再单击Only Bird
- 我看到这两个狗和鸟(✕ - 这是为什么 ?我只想看到鸟) 如果我点击Dog & Bird
- 我看到一个错误(✕ - 不能匹配任何路由URL段:。“狗”我期待看到这两个狗和鸟)
这是为什么?我该如何解决我的代码,以便它能够显示确切的链接描述?
相关或不 - 我认为它必须做一些与结算的AUX线(经routerLink
空传递是没有帮助 - 见PLNKR2)
我固定plunker。 https://plnkr.co/edit/2fvbGnepD5tGaeYb8DKK?p=preview
这里是路由。当我需要用两个插座导航时,阅读路由测试可以理解我的理解 - 只使用插座。主要出口只使用'主'。
<li><a [routerLink]="['']">None</a></li>
<li><a [routerLink]="[{outlets: {primary: 'dog', under: null}}]">Only Dog </a></li>
<li><a [routerLink]="[{outlets: {primary: null, under: ['bird']}}]">Only Bird</a></li>
<li><a [routerLink]="[{outlets: {primary: ['dog'], under: ['bird']}}]">Dog & Bird</a></li>
**完美**。谢谢。 –
[我有一个相关的](https://stackoverflow.com/questions/47857150/angular-how-can-i-activate-aux-route-with-lazy-loaded-module)与出口问题,你可以请有一个看? –
鸟儿看到狗后,鸟会飞走。你应该看看那个 – PierreDuc
我记得以前有过这样的问题。是你吗? – echonax
@echonax nope。但是我确实从一个在线非工作的plnkr中获得了总体思路。 –