[英]Angular2 router doesn't replace component
當我使用router.navigate ['some-route']時,新路由的組件會添加到舊路由的組件之上,而不是替換它:
當前路線是登錄頁面:
登錄后,我通過以下操作導航到主頁:
this.router.navigate(['/form-builder']);
,但它的組件只是添加到了登錄組件的頂部,而無需替換它:
根組件模板:
<router-outlet></router-outlet>
路由配置:
const routes: Routes = [
{ path: '', redirectTo: 'form-builder', pathMatch: 'full' },
{ path: 'form-builder', component: FormEditorComponent, canActivate: [AuthGuard] },
{ path: 'login', component: LoginComponent },
{ path: 'signup', component: SignupComponent },
];
我究竟做錯了什么?
當您看到該組件被添加到當前組件的TOP上時,通常意味着會拋出一些錯誤。 檢查您的開發控制台,並告訴我們在瀏覽時是否遇到一些錯誤。 如果有的話,每次您導航到其他地方時,它都應繼續將組件堆疊在一起。
不,我不確定為什么,或者Angular是否打算以這種方式發生,但是確實如此。 只是從經驗上講。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.