2017-01-16 35 views
0

聲明子路由適當的方式我有一個UsersModule具有以下路由:在角2

export const UsersRoutingModule = RouterModule.forChild([ 
    { 
    path: 'users', component: UsersComponent, 
    children: [ 
     { path: ':id', component: DetailUserComponent }, 
     { path: 'add', component: AddUserComponent }, 
     { path: 'edit', component: EditUserComponent } 
    ] 
    } 
]); 

問題是,當我訪問/users/anything它總是顯示DetailUserComponent,所以,使用兒童路線,我該如何申報兒童路線users

回答

1

嘗試改變路由

export const UsersRoutingModule = RouterModule.forChild([ 
    { 
    path: 'users', component: UsersComponent, 
    children: [ 
     { path: 'add', component: AddUserComponent }, 
     { path: 'edit', component: EditUserComponent }, 
     { path: ':id', component: DetailUserComponent }, 
    ] 
    } 
]); 

因爲在你的路由ID亙古不具有任何限制所以即使東西可以成爲一個ID

+0

有沒有一種方法來定義一個正則表達式,以匹配指定ID? –

+0

@feniixx這就是我現在看的:)因爲這將有助於 –

+0

@feniixx http://blog.devcross.net/2016/03/25/angular-2-router-and-regular-expressions/看這裏。 –