我认为使用 getAll
和 paramMap
可以帮助从 URL 获取数组,但显然不是。
我是不是用错了?
这是一个例子:https://stackblitz.com/edit/angular-bjrjz9
我用这个导航
this.router.navigate(['two', {
id: [1, 2, 3, 4, 5]
}]);
然后我得到值
this.route.paramMap.subscribe(params => {
const ids = params.getAll('id');
console.log('ids', ids);
});
console.log 显示 ['1,2,3,4,5']
但我希望它是 [1,2,3,4,5]
甚至 ['1', '2', '3', '4', '5']
我只是想将数组传递给路由,然后将数组返回到目的地。
当然,我可以只拆分字符串,但在那种情况下使用 getAll
有什么意义呢? :)
最佳答案
getAll()
方法以数组形式返回重复的参数。
示例:
http://www.example.com/?query=a&query=b&query=c
值为:
console.log(params.getAll('query')); // prints ["a","b","c"]
HTTP 规范中的所有查询参数都是字符串。
关于angular - 如何在 Angular 的路由中使用数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54309291/