Javascript 动态路由链接无法显示URL
Javascript 动态路由链接无法显示URL,javascript,angular,rxjs,angular-cli,Javascript,Angular,Rxjs,Angular Cli,标题 价格 {{p.title}} {{p.price}} 编辑 { 路径:“管理员/产品”, 组件:AdminProductsComponent, canActivate:[AuthGuard,AdminAuthGuard] }, { 路径:“管理/产品/新”, 组件:ProductFormComponent, canActivate:[AuthGuard,AdminAuthGuard] }, { **路径:“admin/products/:id”** 组件:ProductFormCompon
标题
价格
{{p.title}}
{{p.price}}
编辑
{
路径:“管理员/产品”,
组件:AdminProductsComponent,
canActivate:[AuthGuard,AdminAuthGuard]
},
{
路径:“管理/产品/新”,
组件:ProductFormComponent,
canActivate:[AuthGuard,AdminAuthGuard]
},
{
**路径:“admin/products/:id”**
组件:ProductFormComponent,
canActivate:[AuthGuard,AdminAuthGuard]
},
你好,朋友们
你可以在下面的图片中看到蓝色的“编辑”字样。
我希望它显示amdin/product+“URl”,但结果是admin/product/undefined
我也给出了我为这个函数编写的代码,我的问题在哪里
此外,我在cmd和chrome控制台中都没有遇到complian错误
问候 在编辑链接中,您正在使用
p.key
,如下所示
<a [routerLink] = "['/admin/products/', p.key]" >Edit</a>
编辑
但在products数组中,您不会在该数组的
product
对象中获得key
字段。因此,p.key
将是未定义的Editkey
在对象中不存在。尝试使用Edit
或Edit
而不是Edit
?这怎么可能?可能是任何东西p.key
我猜也没关系。如果没有提供,那么p.key
将给出未定义的
,路由将被删除变得像/admin/products/undefined
@jaibalaji,如果他/她使用keyvalue管道,那么p.key将有值,否则它将返回undefined。参考:https://stackblitz.com/edit/angular-ivy-fqhhsw?file=src%2Fapp%2Fapp.component.ts
@zhiqiangshu如果您使用firebase,那么您可以在获取数据时获取ID。如果您的问题没有解决,请告诉我。或者为相同的问题添加新问题。
<a [routerLink] = "['/admin/products/', p.key]" >Edit</a>