使用ID为String 4的路由参数是字符串
问题描述:
如何使用ID为String的路由参数?使用ID为String 4的路由参数是字符串
{path: 'param/:id', component: MyComponent}
let id = this.route.snapshot.params['id'];
块引用
答
使用路线快照来获得你所显示的查询参数应该会给你一个字符串。如果你想该字符串隐式转换为数字,所以你可以在路由参数用于导航使用它,您可以前缀与+
变量:
// (+) converts string 'id' to a number
let id = +this.route.snapshot.params['id'];
然后:
this.router.navigate(['/example', id]);
退房在文档 https://angular.io/guide/router#snapshot-the-no-observable-alternative中获取查询参数的示例。
+0
非常感谢,我会尽力。 –
+0
总是想知道+的意思。这其实是我的问题。之前跟随他们使用+的英雄之旅。在这里,我使用UUID,并且必须删除所有+'es。谢谢。 – hogan
答
在您可以使用此代码串变换成数字组件:
constructor(private route: ActivatedRoute) { }
ngOnInit() {
this.route.paramMap
.subscribe((params: ParamMap) => {
let id = +params.get('id'); // This line converts id from string into num
});
}
是什么问题?你想从URL获得ID?你想用ID导航? –
问题不明确 –
是的,我想用id导航。但是在角度类型的ID是数字,我想要的ID类型是STRING –