在Angular 4中使用路径参数,ID为String

时间:2017-06-17 09:50:11

标签: node.js angular

如何使用ID为ID的路由参数?

{path: 'param/:id', component: MyComponent}

let id = this.route.snapshot.params['id'];
任何想法

  

块引用

2 个答案:

答案 0 :(得分:2)

使用路径快照获取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

答案 1 :(得分:0)

在组件中,您可以使用此代码将字符串转换为数字:

 constructor(private route: ActivatedRoute) { }

  ngOnInit() {
    this.route.paramMap
      .subscribe((params: ParamMap) => {
        let id = +params.get('id'); // This line converts id from string into num
      });
  }