Я пытаюсь маршрутизировать с использованием метода Router.navigate
. Я выполнил инструкции к письму, но когда я направляюсь через API, он перезагружает корневую страницу.Перенаправление маршрутизации на корень
В моей RootComponent
Я пытаюсь использовать
this._router.navigate ([ 'ABC', 'Page1']); который должен перенаправить меня к применению/ABC/АБВ
Но если я непосредственно посетить application/abc/xyz
через мой браузер, он работает плавно
app.component.ts
import {Component} from "angular2/core";
import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS} from "angular2/router";
import {RootComponent} from "./components/root.component";
import {Page1Component} from "./components/page1.component";
@Component({
selector: 'app',
template: '<router-outlet></router-outlet>',
directives: [ROUTER_DIRECTIVES],
providers: [
ROUTER_PROVIDERS
]
})
@RouteConfig([
{
path: '',
name: 'Root',
component: RootComponent,
useAsDefault: true
},
{
path: '/abc/...',
name: 'ABC',
component: ABCComponent
}
])
export class AppComponent {
}
ABCComponent
@Component({
selector: 'abc',
template: '<router-outlet></router-outlet>',
directives: [ROUTER_DIRECTIVES]
})
@RouteConfig([
{
path: '/xyz',
name: 'Page1',
component: Page1Component
}
])
export class ABCComponent{
constructor(private _router:Router){
}
}
Page1Component
import {Component} from "angular2/core";
import {Router} from "angular2/router";
@Component({
selector: 'page1',
template: '<h1>Page1</h1>'
})
export class Page1Component{
constructor(private _router:Router){
}
}
Что я делаю неправильно?
EDIT
объяснить это еще проще условия
Application (2 routes at root level)
| |
Default ("/") - Root Component /abc/ ABC Component
|
/abc/xyz Page1 Component
То, что я пытаюсь сделать это, перейдите к Page1 из корневого компонента.
Решение
После обратного enineering от S.alem plunkr, вот решение
http://plnkr.co/edit/F1p6aQNJ7lREHCiVnKEP?p=preview
Что такое желаемое поведение. Как вы это делаете, если не маршрутизируете через API. Работает ли он так, как ожидалось? –