Angular 5 子路由

标签 angular typescript routing

我有一个关于 Angular 5 中路由的问题。我想创建一个子路由,但是当我输入 url(对于子路由)时,父组件被加载。 我的路线:

path: 'user-admin/:id',
component: UserAdminComponent,
},
children: [
  {
    path: '',
    component: UserAdminComponent,
    pathMatch: 'full'
  },
  {
    path: "final-exams",
    component: FinalExamsComponent,
  },

属于问题的两条路线:

http://localhost:4200/user-admin/0

http://localhost:4200/user-admin/0/final-exams

提前感谢您的帮助! :)

最佳答案

Have a look at the working solution

Stack Blitz, Source Code

user-admin/1//你好将被打印

user-admin/1/final-exams//Hola 将是输出

Problem was:

您在父路由和子路由中都提到了相同的组件,而在父路由中未提及子路由

const appRoutes: Routes = [
  {
    path: 'user-admin/:id',
    // component: HelloComponent, // No need to mention the same component, in parent
    children: [     // Children routes are inside the parent route
      {
        path: '',
        component: HelloComponent,
        pathMatch: 'full'
      },
      {
        path: "final-exams",
        component: HolaComponent
      }
    ]
  }
];

关于Angular 5 子路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49067529/

相关文章:

AngularJS 子目录路由不起作用,应用了 <base> 标签

html - 无法在 html 中对齐表头和表体,使用带有内存数据的 Angular

Angular:DataList 不更新显示

dynamic - Angular 2 RC6 - 动态加载 entryComponents

javascript - momentJs add days 返回 moment 对象而不是日期

javascript - 在 Angular 8 中下载并播放流音频

javascript - ngFor中如何绑定(bind)一个输入框

javascript - 如何在 Angular 中创建可重用的输入字段?

asp.net-mvc - 如何在 ASP.NET MVC 路由中使用带有 HttpMethodConstraint 的自定义约束?

ruby-on-rails - 使用 Rails 5(API 标志)并且尽管声明了路由但没有路由错误