我创建了 AppModule 中导入的 CoreModule ,在 AppRoutingModule 之后我指定了应用的入口点,但我是有一个问题,当应用程序启动时,它显示通配符路由,这是我的代码:
CoreRoutingModule
export const CoreRoutingModule = RouterModule.forRoot([
{ path: '**', component: NotFoundComponent }
]);
CoreModule
@NgModule({
imports: [
CommonModule,
CoreRoutingModule
],
declarations: [ NotFoundComponent ]
})
export class CoreModule {}
AppRoutingModule
export const AppRoutingModule = RouterModule.forRoot([
{ path: '', component: AppComponent }
]);
的AppModule
@NgModule({
declarations: [
AppComponent
],
imports: [
AppRoutingModule,
CoreModule
],
providers: [],
bootstrap: [ AppComponent ]
})
export class AppModule {}
当我访问http://localhost/时应用程序显示的是带有NotFoundComponent
的通配符路径,它应显示AppComponent
工作环境:Angular 2.4.3,路由器3.4.3
答案 0 :(得分:0)
我不确定您的代码究竟是什么问题。没有所有文件的测试。无论如何,我想这会奏效。试试这个...添加(pathMatch)和redirectTo
export const AppRoutingModule = RouterModule.forRoot([
{ path: '', redirectTo: '/whereToGo', pathMatch: 'full'}
]);
请参考这个。希望能帮助到你。 https://angular.io/docs/ts/latest/guide/router.html#!#default-route
答案 1 :(得分:0)
首先在根级别按顺序匹配路由。
在你的情况下**来自''因此**路线被渲染。