Tôi vẫn đang làm việc trên một dự án sử dụng Angular2. Nếu bạn muốn biết thêm chi tiết về lý do tại sao tôi cần phải làm những gì tôi sẽ giải thích, vui lòng tham khảo issue này.Góc 2: xác định Bộ định tuyến trên Cấu phần khác với Bộ định tuyến
Tôi có một số AppComponent
được khởi động qua bootstrap
. Đó là một thành phần rất đơn giản:
@Component({
selector: 'app-view',
directives: [ Devtools, MainComponent ],
template: `
<ngrx-devtools></ngrx-devtools>
<main-cmp></main-cmp>
`
})
export class AppComponent { }
Thành phần này bao gồm một số khác: MainComponent
(thông qua bộ chọn main-cmp
). Vì một số lý do, tôi muốn thiết lập định tuyến của mình trong MainComponent
.
Đây là mã:
@Component({
selector: 'main-cmp',
directives: [ ROUTER_DIRECTIVES, NavComponent ],
template: `
<h1>App</h1>
<nav-cmp></nav-cmp>
<router-outlet></router-outlet>
`
})
@RouteConfig([
{ path: '/home', name: 'Home', component: HomeComponent, useAsDefault: true },
{ path: '/medias', name: 'Medias', component: MediasComponent }
])
export class MainComponent {
constructor (private router:Router, private store:Store<AppStore>) {
router.subscribe(url => store.dispatch(changeUrl(url)));
}
}
Cuối cùng, MainComponent
bao gồm NavComponent
mà là một nav rất cơ bản.
Vấn đề là, với thiết lập này, tôi gặp sự cố này: EXCEPTION: Component "AppComponent" has no route config. in [['Home'] in [email protected]:15]
.
Tất nhiên, nếu tôi di chuyển logic của bộ định tuyến đến AppComponent
, mọi thứ hoạt động tốt.
Vì vậy, câu hỏi của tôi là: có cách nào để làm công cụ định tuyến thành một thành phần khác với thành phần được khởi động không?
Cảm ơn :).