Angularjs 2路由不起作用,即使我手动输入url,仍然没有工作 .
配置和版本是: -
var ngVer ='@ 2.0.0-rc.5'; //锁定角度包版本;不要让它漂浮到最新! var routerVer ='@ 3.0.0-rc.1'; //锁定路由器版本var formsVer ='@ 0.3.0'; //锁定表格版本var routerDeprecatedVer ='@ 2.0.0-rc.2';操作系统: - Ubuntu 14,谷歌浏览器 .
app.routing.ts
import { Routes, RouterModule } from '@angular/router';
import { HeroesComponent } from './heroes.component';
const appRoutes: Routes = [
{
path: 'heroes',
component: HeroesComponent,
pathMatch: 'full'
}
];
export const routing = RouterModule.forRoot(appRoutes);
app.component.ts
import { Component } from '@angular/core';
import { AppModule } from './app.module';
import { HeroesComponent } from './heroes.component';
import { routing } from './app.routing';
@Component({
selector : "my-app",
template : `
<a routerLink="/heroes1" >Heroes</a>
<router-outlet></router-outlet>
`,
directives: [HeroesComponent]
})
export class AppComponent {
title = 'Tour of Heroes';
}
它没有初始化,在url中输入任何内容,它将转到主页“/”
1 回答
如果路线正在处理,则没有理由导入英雄组件 . 因此,删除导入并删除app.component中的指令 . 此外,重要的是返回并引用在官方Angular.io网站上使用rc.5构建应用程序的新方法 .
我建议你重新快速启动,了解新的module.ts文件,然后直接跳转到路由教程here以修复当前问题 .