角2路由注入到路由器插座不工作
问题描述:
我试图让我的头围绕此路由概念,但无法理解如何工作。角2路由注入到路由器插座不工作
目前我有一个@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{
}
答
这是新路由器中的一个已知问题,将被修复。如果没有routerLink
,将不会创建任何路由器实例。或者,您可以将路由器注入根组件。
感谢您的快速回答。你在另一个线程中提到在AppComponent中注入“Router”。你运行了一个“无法解决路由器的所有参数”错误? – user1964663
您从'@ angular/router-deprecated';'从'@ angular/router';'**和**'import {RouteConfig,ROUTER_DIRECTIVES,ROUTER_PROVIDERS}的import {Routes,RouterOutletMap}你只需要决定其中的一个。这两者在任何方面都不兼容。 –
我得到了错误使用@角/路由器,我也尝试使用@角/路由器deprecate并得到了同样的事情。我很好奇你是什么版本。我目前使用“@ angular/core”:“2.0.0-rc.1”。 – user1964663