0
使用默認路由策略或NoPreloadingStrategy預裝路由會更改url但完全不初始化組件(頁面爲空)。@angular - Defualt/NoPreloading策略打開空白頁面,組件根本未初始化
app.module.ts
imports: [
BrowserModule,
SharedModule,
CoreModule.forRoot(),
AppRoutingModule,
],
app.routing.module.ts
const appRoutes: Routes = [
{ path: 'cart', canActivate: [CartGuardService], component: CartComponent },
{ path: 'login', loadChildren: './login/login.module#LoginModule' },
{ path: '', redirectTo: '/cart', pathMatch: 'full' },
];
@NgModule({
imports: [
RouterModule.forRoot(appRoutes)
],
exports: [
RouterModule
],
providers: [
]
})
export class AppRoutingModule { }
登錄-routing.module.ts
const routes: Routes = [
{ path: 'login', canActivate: [LoginGuardService], component: LoginComponent }
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
providers: []
})
export class LoginRoutingModule { }
在我的app.component.html按鈕點擊導航到使用登錄網址。
this.router.navigate(['/login'])
在login.component.ts
既不構造或ngOnInit被調用時,已經把的console.log在兩人面前,沒有在控制檯會打印,在地址欄中的URL被改變但它打開空白頁面。
納克--version
@angular/cli: 1.0.0
node: 6.9.1
os: win32 x64
@angular/common: 4.0.0
@angular/compiler: 4.0.0
@angular/core: 4.0.0
@angular/forms: 4.0.0
@angular/http: 4.0.0
@angular/platform-browser: 4.0.0
@angular/platform-browser-dynamic: 4.0.0
@angular/router: 4.0.0
@angular/animations: 4.0.0
@angular/cli: 1.0.0
@angular/compiler-cli: 4.0.0
刪除了所有的路由守衛,但仍然是同樣的問題。 @phacic –