Angular 5通配符路径匹配

时间:2018-04-11 21:16:39

标签: angular routing angular5

我正在学习Angular 5,并且我试图更加牢固地掌握路由。我的应用程序正在使用REST API,它在返回的DTO中提供了有关对象详细信息的URL。路径的结构是常数/Categories/root-category/subcategory-1/subcategory-2/.../subcategory-N/p/{product-code}对我来说有问题的部分是类别树的深度警告,根类别可​​能有任意数量的子类别,而产品附着在树的叶子上。

我已经检查了多个教程,包括正式的Hero路径,但在我发现的示例中,使用了事先知道的简单URL模式,这对我不起作用,因为我可以' t预测类别树的深度。我还想避免的是,根据返回的URL来操纵/构建自定义URL。

示例代码:

const ROUTES: Routes = [
  {
    path: 'Categories', children: [
      {
        path: ':categoryId', component: CategoryComponent,
        children: [
          {path: '**/p/:productCode', component: ProductDetailsComponent}
        ]
      },
    ]
  },
];

它匹配CategoryComponent的路径,但对ProductDetailsComponent这样做很容易。

1 个答案:

答案 0 :(得分:0)

试试这个:

const ROUTES: Routes = [

   { path: 'Categories', CategoriesComponent

      children: [

         { path: ':id', component: CategoryComponent  

            children: [

               { path: ':name/p/:id', component: ProductDetailsComponent }

            ]
         }
      ]
   }
];