[英]Angular 4 children doesn't work
我想单击一个链接,或更简单的方法是在URL中键入/child
并看到该页面,但对我来说不起作用。
我想我错过了一些东西。 在我的html创建页面中,我有<router-outlet></router-outlet>
。
在此组件创建中,我有一个子级搜索结果组件,与商品和付款子级组件处于同一级别。
在搜索结果html页面上,我具有商品和付款的链接。
http://localhost:5050/create/search-result/search-results
当我点击商品时,我想输入网址:
http://localhost:5050/create-trade/goods
现在不起作用。 为什么? 每次我重定向到登录页面。
<a class="btn btn-primary float-right" routerLink="/goods">
<a class="btn btn-primary float-right" routerLink="/payment">
{path: 'login', component: LoginComponent},
{path: 'create/:section', component: CreateTradeComponent, ,
children: [
{path: '', redirectTo: 'search-results', pathMatch: 'full'},
{path: 'search-results', component: TradeSearchResultsComponent},
{path: 'goods', component: GoodsComponent},
{path: 'payment', component: PaymentComponent},
]
},
{path: '**', redirectTo: 'login'}
您应该在create组件内部有一个路由器插座。 不在搜索结果内。 将以下代码放在create组件中
<a [routerLink]="['goods']">goods</a>
<a [routerLink]="['payment']">payment</a>
如果尝试从创建组件子路由重定向。 由于它将根据当前激活的路由创建一个URL,因此它将生成类似/create/search-result/search-results
的URL。 在创建路径之前,您应该使用../
返回路径段。 那就准备好了。
<a class="btn btn-primary float-right" routerLink="['../goods']">
<a class="btn btn-primary float-right" routerLink="['../payment']">
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.