使用Angular 2 Router。我有一個2級路由(root routing
和child routing
]頁面重新加載子路由
我的問題是,導航到一個孩子路線時被加載後孩子被重新加載頁面。
子級路由
const childRoutes: Routes = [
{
path: '',
component: BaseComponent,
children: [
{
path: '',
component: DetailsComponent
},
{
path: 'other',
component: OtherComponent
}
]
}
];
export const childRouting = RouterModule.forChild(childRoutes);
頂級路由
const appRoutes: Routes = [
{
path: '',
redirectTo: '/overview',
pathMatch: 'full'},
{
path: 'overview',
component: OverviewComponent},
{
path: 'sub',
//This is the module which the childRoutes belongs to.
loadChildren: 'app/components/sub.module#SubModule'
}
];
export const appRoutingProviders: any[] = [];
export const routing = RouterModule.forRoot(appRoutes);
從DetailsComponent
呼籲導航export class DetailsComponent implements OnInit {
constructor(private router: Router) { }
ngOnInit() { }
onSubmit() {
this.router.navigate(['/sub/other'])
}
}
P.S
我試圖讓這個問題的短,所以如果需要更多的代碼,那麼請讓我知道,我會很樂意加入。
你是什麼意思的「頁面重新加載」。我從來沒有看到路由器重新加載頁面。它只添加/刪除組件並更新瀏覽器URL欄中的URL。 –
這就是爲什麼我很困惑。整頁重新加載。完整的xhr電話,獲取所有js文件,照片和所有內容。頁面是空白的..有角度js的加載指示器,然後子視圖重新出現。我能夠導航到我想要的頁面,但接着又有另一個http調用到同一頁面。我會嘗試記錄屏幕並將其作爲gif附加 – royB
應該指向子路由的鏈接的URL是什麼? (當鼠標移動到鏈接上時,工具欄中的chrome會顯示什麼) –