Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 2路由器跳过重定向到并使用子路由_Angular_Angular2 Routing_Angular2 Router3 - Fatal编程技术网

Angular 2路由器跳过重定向到并使用子路由

Angular 2路由器跳过重定向到并使用子路由,angular,angular2-routing,angular2-router3,Angular,Angular2 Routing,Angular2 Router3,我已经修补RC6一段时间了,希望最终到嵌套子组件的路由能够开箱即用。嗯,没有这样的运气。我现在看到的效果是默认路由的重定向到被忽略,相反,Angular直接转到第一个子组件 import { Route, RouterModule } from '@angular/router'; import { LandingPageComponent } from 'src/landing-page.component'; import { DepartmentModule } from 'src/dep

我已经修补RC6一段时间了,希望最终到嵌套子组件的路由能够开箱即用。嗯,没有这样的运气。我现在看到的效果是默认路由的
重定向到
被忽略,相反,Angular直接转到第一个子组件

import { Route, RouterModule } from '@angular/router';
import { LandingPageComponent } from 'src/landing-page.component';
import { DepartmentModule } from 'src/department/department.module';

const routes: Route[] = [
  { path: '', redirectTo: 'landing-page', pathMatch: 'full' },
  { path: 'landing-page', component: LandingPageComponent },
  { path: 'department', loadChildren: () => DepartmentModule }
];

export const appRoutingProviders: any[] = [];
export const routing = RouterModule.forRoot(routes, {enableTracing:true});
你应该认为不输入URL会让我进入
登录页
,但不,我无法理解
部门

从那时起,一切都按预期运行,然后我可以导航到子路径

import { Route, RouterModule } from '@angular/router';
import { DepartmentComponent } from './department.component';
import { DepartmentDetailsComponent } from './department-details.component';

const departmentRoutes: Route[] = [
  { path: '', component: DepartmentComponent },
  { path: ':id', component: DepartmentDetailsComponent }
];

export const departmentRouting = RouterModule.forChild(departmentRoutes);
但奇怪的是,我需要

<a [routerLink]="['../..']">

可以在这里找到。

您只需要从导入中删除部门模块(从AppMoule的@NgModule()),如下所示

imports: [ BrowserModule, MdButtonModule, 
           RouterModule, routing]         //<---removed DepartmentModule declaration  
导入:[BrowserModule,MdButtonModule,
RouterModule,routing]/您只需从导入中删除部门模块,如下所示

imports: [ BrowserModule, MdButtonModule, 
           RouterModule, routing]         //<---removed DepartmentModule declaration  
导入:[BrowserModule,MdButtonModule,
RouterModule,routing]//您预期的行为是什么?它是否首先加载带有按钮(重定向到dept 45)的
登录页
?当然,如果我不提供路径,它是否会到达
登录页
。您预期的行为是什么?它是否首先加载带有按钮(重定向到dept 45)的
登录页
?如果我没有提供路径,当然可以到达
登录页。它还修复了
[routerLink]
,太棒了!确保不要导入延迟加载模块。它们适用于延迟加载。Angular2将自行处理。它还修复了
[routerLink]
,太棒了!确保不要导入延迟加载模块。它们适用于延迟加载。Angular2将自行处理。