2016-10-26 5 views
0

У меня есть определенный маршрут в angular2 приложении и получать такую ​​ошибку:не может соответствовать любым маршрутам: «»

Может не найден маршрутов: «»

export const routes: Routes = [{ 
 
    path: '', 
 
    component: MainComponent, 
 

 
    children: [{ 
 
    path: 'callCenter', 
 
    component: CallCenterComponent, 
 
    resolve: { 
 
     countries: CountriesResolver 
 
    }, 
 
    }, { 
 
    path: 'vehicle', 
 
    component: VehicleComponent, 
 
    resolve: { 
 
     vehicleCategories: VehicleCategoryResolver, 
 
     vehicleOptions: VehicleOptionResolver 
 
    }, 
 
    }, { 
 
    path: 'territory', 
 
    component: TerritoryComponent, 
 
    resolve: { 
 
     territoryOptions: TerritoryOptionResolver 
 
    } 
 
    },{ 
 
    path: 'token', 
 
    component: TokenGenerationComponent 
 
    }, { 
 
    path: 'rider', 
 
    component: RiderComponent 
 
    }, { 
 
    path: 'dispatch', 
 
    component: DispatchSchemaComponent, 
 
    resolve: { 
 
     dispatchOrders: DispatchOrderResolver, 
 
     dispatchModes: DispatchModeResolver 
 
    } 
 
    }] 
 
}, { 
 
    path: 'login', 
 
    component: LoginComponent 
 
}];

Это код моей конфигурации маршрута. Я делаю это так же, как в примерах, но это не работает, свойство redirectTo тоже не помогает. Пустой маршрут по умолчанию не загружается. Может ли кто-нибудь мне помочь?

ответ

1

Я считаю, что угловые ожидают, что дочерние маршруты MainComponent будут иметь маршрут с дорожкой ''.

export const routes: Routes = [{ 
    path: '', 
    component: MainComponent, 

    children: [{ 
     path: '', 
     component: SomeComponent 
    }, 
    { 
    path: 'callCenter', 
    component: CallCenterComponent, 
    resolve: { 
     countries: CountriesResolver 
    }, 
    }, { 
    path: 'vehicle', 
    component: VehicleComponent, 
    resolve: { 
     vehicleCategories: VehicleCategoryResolver, 
     vehicleOptions: VehicleOptionResolver 
    }, 
    }, { 
    path: 'territory', 
    component: TerritoryComponent, 
    resolve: { 
     territoryOptions: TerritoryOptionResolver 
    } 
    },{ 
    path: 'token', 
    component: TokenGenerationComponent 
    }, { 
    path: 'rider', 
    component: RiderComponent 
    }, { 
    path: 'dispatch', 
    component: DispatchSchemaComponent, 
    resolve: { 
     dispatchOrders: DispatchOrderResolver, 
     dispatchModes: DispatchModeResolver 
    } 
    }] 
}, { 
    path: 'login', 
    component: LoginComponent 
}]; 

Edit: С некоторыми перенаправлять

export const routes: Routes = [ 
    { 
    path: '', 
    component: MainComponent, 
    children: [ 
     { 
     path: '', 
     redirectTo: 'callCenter' 
     }, 
     { 
     path: 'callCenter', 
     component: CallCenterComponent, 
     resolve: { 
      countries: CountriesResolver 
     }, 
     }, { 
     path: 'vehicle', 
     component: VehicleComponent, 
     resolve: { 
      vehicleCategories: VehicleCategoryResolver, 
      vehicleOptions: VehicleOptionResolver 
     }, 
     } 
    ... 

Перемещение MainComponent для детей маршрутов должны также работать

export const routes: Routes = [ 
    { 
    path: '', 
    children: [ 
     { 
     path: '', 
     component: MainComponent 
     }, 
     { 
     path: 'callCenter', 
     component: CallCenterComponent, 
     resolve: { 
      countries: CountriesResolver 
     }, 
     }, { 
     path: 'vehicle', 
     component: VehicleComponent, 
     resolve: { 
      vehicleCategories: VehicleCategoryResolver, 
      vehicleOptions: VehicleOptionResolver 
     }, 
     } 
    ... 
+0

Спасибо большое, пожалуйста, вы можете описать, почему это работает сюда? Anf также Если я не хочу использовать компонент по умолчанию, могу ли я использовать redirectTo здесь или какой-то издевательский пустой компонент? –

+0

Я не знаю, почему это угловато, может быть, кто-то мудрый может ответить на это. Вы можете перенаправить на другой маршрут с redirectTo, я немного отредактировал ответ – Kyrsberg

+0

Большое спасибо за помощь, вы сэкономите много времени для меня, потому что этот маршрут сильно отличается от обычного ui-router от первого углового, который я использовал к. –

Смежные вопросы