2017-01-06 3 views
2

Я хотел бы знать, можно ли динамически добавлять дочерние маршруты во время выполнения, от let say service ...?Угловая 2: добавление дочерних маршрутов динамически

Дано:

const routes: Routes = [ 
    { 
     path: '', component: GloriousComponent, 
     children: [ 
      { path: 'path1', component: Child1Component }, 
      { path: 'path2', component: Child2Component }, 
      { path: 'path3', component: Child3Component }, 
     ] 
    } 
]; 

Могу ли я удалить детей из «» пути и каким-то образом получить ссылку на константных маршрутов, а затем в дальнейшем динамически добавлять детей в «» путь?

Что-то вдоль линий ...

const routes: Routes = [ 
    { 
     path: '', component: GloriousComponent   
    } 
]; 

routes[''].appendChildren(
     [ 
      { path: 'path1', component: Child1Component }, 
      { path: 'path2', component: Child2Component }, 
      { path: 'path3', component: Child3Component }, 
     ] 
    ) 
+0

Динамически вы имеете в виду бутстрап? или когда приложение запущено? –

+0

Я имею в виду во время выполнения, я обновил свой вопрос, спасибо, что указал на это. – Thibs

+0

https://github.com/angular/angular/issues/9527 Посмотрите на это –

ответ

2

В настоящее время изменения не поддерживается, но вы можете сохранить список маршрутов самостоятельно, а затем вызвать

this.router.resetConfig(routes) 

загрузить новый набор маршрутов в маршрутизатор.

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