在构建带有以下形式的queryParams对象之后,我正在导航:
options {
...
words: (4) ["chuck", "norris", "vs", "keanu", "reeves"]
}
然后navigate
与该对象一起更新URL的参数:
this.router.navigate(['/search'], { queryParams: options });
对于每个条目,URL words
参数都是这样的:
/search?words=chuck&words=norris&words=vs&words=keanu&words=reeves
我们如何正确地传递数组到queryParams
?
链接: angular.io/api/router/Router#navigate alligator.io/angular/query-parameters
queryParamsHandling对此没有影响。 这是StackBlitz复制。
答案 0 :(得分:-1)
您正在按照正确的方式进行操作,只需在/search
组件中使用params.getAll:
words: string[];
constructor(private route: ActivatedRoute) {
}
ngOnInit() {
this.route.queryParamMap.subscribe(params => this.words = params.getAll('words'));
}
更新:关于堆栈闪电的有效示例:angular-query-params-pass-array