2016-01-11 4 views
0

Как и Угловой UI-маршрутизатор, возможно ли иметь несколько маршрутов с одним URL-адресом в Angular2? например, по двум маршрутам:Угловые 2 маршрута с одинаковым адресом?

{ path: '/home', name: 'Home', component: HomeComponent} , 
{ path: '/home', name: 'Dashboard', component: DashboardComponent} 

В настоящее время имеется ошибка в консоли для противоречивых маршрутов.

+3

, так что из двух компонентов вы ожидаете, что угловой визуализировать, если вы перейдете на этот маршрут? – Langley

+0

Наверное, последний :). Вообще-то, я понял. Но его, как UI-Router, обеспечивает наличие нескольких состояний, имеющих привязку к одному и тому же URL-адресу. – Nexus23

+0

Я думаю, что было бы проще сказать, какие функции вам нужны или добавить пример того, как вы это делали в ui-router – Langley

ответ

1

Вы можете использовать AuxRoute, если хотите, ui-router стиль с именем ui-view.

https://angular.io/docs/ts/latest/api/router/AuxRoute-class.html

Также смотрите этот вопрос. Is Angular 2 Auxiliary router broken?

Пример: http://plnkr.co/edit/JsZbuR?p=preview

+0

Спасибо за ваш ответ @TheKojuEffect. Вопрос касался нескольких видов, указывающих на один и тот же URL, но каждый вид действует как полная страница содержимого. AuxRoutes - прекрасная концепция BTW. – Nexus23

-1

Вы можете проверить Angular2 - two components with the same route где возможные решения обсуждаются добиться того, что вы после этого.

  1. Используйте * ngIf в шаблоне использовать разные селекторы в зависимости от оцениваемого состояния.

    <home-logged-in *ngIf="authenticated()"></home-logged-in> 
    <home-logged-out *ngIf="!authenticated()"></home-logged-out> 
    
  2. Создать пользовательский маршрутизатор-розетка, которая будет загружать определенный компонент на основе оцениваемого состояния.

  3. Перенаправление на другой маршрут в зависимости от оцениваемого состояния (см источник http://www.captaincodeman.com/2016/03/31/angular2-route-security/)

Этот список не является окончательным и здесь могут быть и другие способы, чтобы достичь того, что вы ищете.

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