角度2路由注入路由器出口不工作

时间:2016-05-31 20:40:29

标签: routing angular router

我正试图绕过这个路由概念,但很难理解它是如何工作的。

目前我有一个@routes加载带有'/'路径的组件。这应该在页面呈现后立即加载。我遇到的问题是..如果html模板中存在[routerLink],我的组件只会加载。

@Component({
  selector: 'my-app',
  template: `    
  <h1>Component Router</h1>
    <nav>
      <a [routerLink]="['/crisis-center']">Crisis Center</a>
      <a [routerLink]="['/heroes']">Heroes</a>
    </nav>
    <router-outlet></router-outlet>`,
  directives: [ROUTER_DIRECTIVES]

})

@Routes([
  {path: '/', component: CoreComponent}
])

***core.component**

import {Component} from '@angular/core';
import { Routes , RouterOutletMap} from '@angular/router';
import { RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS} from '@angular/router-deprecated';

import { SideBarComponent} from './sidebar/sidebar.component';


@Component({
    template: `<side-bar></side-bar>
  <router-outlet></router-outlet>`,
    directives: [SideBarComponent]

})

export class CoreComponent{

}

1 个答案:

答案 0 :(得分:2)

这是新修补程序中已知的问题。如果没有routerLink,则根本不会创建路由器实例。或者,您可以将路由器注入根组件。