我可以使用Angular中的查询参数过滤掉数据吗? this.rows是一个数组。 我将仅显示具有“ Pending”查询参数的this.rows。我如何使用queryParams过滤掉它。这是我的下面的代码。
// this.rows is an array
this.activeRouter.queryParams
.filter(params => params.q)
.subscribe(params => {
console.log(params);
if(this.rows.status === params.q){
return this.rows;
}
});
答案 0 :(得分:5)
您可以使用ActivatedRoute获取类似的查询参数,然后将其存储在一个变量中,并使用过滤器获取行中的待处理条目。
import {Router, ActivatedRoute, Params} from '@angular/router';
import {OnInit, Component} from '@angular/core';
@Component({...})
export class MyComponent implements OnInit {
queryParamsStatus ='';
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
// subscribe to router event
this.activatedRoute.params.subscribe((params: Params) => {
this.queryParamsStatus= params['status'];
console.log(queryParamsStatus );
});
let tempRows = this.rows.filter(s => s.staus === this.queryParamsStatus);
}
}