我在HashLocationStrategy
中使用app.module
,如下所示:
@NgModule({
imports: [
BrowserModule,
AppRoutingModule
],
declarations: [ AppComponent ],
providers: [{provide: LocationStrategy, useClass: HashLocationStrategy}],
bootstrap: [ AppComponent ]
})
我的app-routing.module
定义为:
export const routes: Routes = [
{ path: '', redirectTo: 'home', pathMatch: 'full'},
{ path: 'live', loadChildren: 'app/live/live.module#LiveModule' }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
当我导航到根网址时,它会将我正确地重定向到home
,但是当我尝试导航到/live
时,我仍然会被重定向到家。当我使用/#/live
时,它会正确加载LiveModule
。
知道为什么会这样吗?
答案 0 :(得分:-2)
根据Angular 2种子,@ NgModule中的Imports具有哈希策略的语法如下:
RouterModule.forRoot(rootRouterConfig,{useHash:true})
希望有所帮助