2016-08-18 10 views
1

У меня есть несколько маршрутов в Angular2Как настроить вложенные маршруты в Angular 2?

{ path: 'items', component: ItemComponent } 

ItemComponent имеет собственный подменю.

<a routerLink='/items/sales'>Sales</a> 
<a routerLink='/items/suppliers'>Suppliers</a> 
<a routerLink='/items/stock'>Stock</a> 

Я хочу подменят быть видимым во всех этих компонентах (продажи, поставщики, акция)

Я пытаюсь поставить второй маршрутизатор-выход в ItemComponent, который должен затем показать продажи/поставщиками/запасами. Причина в том, что я хочу, чтобы подменю было видимым во всех этих случаях.

Как настроить такие вложенные маршруты?

Или я должен просто создать ItemMenuComponent и поместить элемент для этого в верхней части продаж, поставщиков и компонентов запаса?

+1

Есть продаж, поставщиков и фондовых ItemComponents? потому что их маршрут 'items/sales' конфликтует с' items /: id' – BeetleJuice

+0

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

ответ

4

Вы можете определить маршруты детей как это.

[  
    { 
     path: 'items', 
     component: ItemsComponent, 
     children: [ 
      { 
       path: '', // default 
       component: SubItemComponent1 
      }, 
      { 
       path: 'item1', 
       component: SubItemComponent1 
      }, 
      { 
       path: 'item2', 
       component: SubItemComponent1 
      } 
     ] 
    }, 
    .... 
    .... 
] 

Для более: https://github.com/narainsagar/angular2-demos/blob/master/src/app/app.routes.ts#L17

Приветствия,

+0

Интересно, я задавался вопросом, было ли у детей имущество релевантным, но документация немного тонкая на данный момент! Все это работает против одного выхода маршрутизатора? – Vok

+1

https://angular.io/docs/ts/latest/guide/router.html –

+0

ОК, это намного более подробно, чем раньше! Спасибо, что указали, что должно было быть очевидно :) – Vok

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