首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角5随路线变化的变化

角5随路线变化的变化
EN

Stack Overflow用户
提问于 2018-01-20 10:09:38
回答 1查看 913关注 0票数 2

我有一个拥有一些属性的用户的数组。当用户更改路由时,它应该只显示那些具有某些特定属性的用户,这些属性放在url中。目前,我只能在任何地方显示所有用户,而且当id被更改时,组件似乎不会改变。

我试过了

代码语言:javascript
复制
ngOnInit(): void {
    const id = +this.route.snapshot.paramMap.get('departmentId');
    this.employeeService.getEmployees()
      .subscribe(emps => this.employees = emps);

    this.employees = this.employees.map(emp => {
      if (emp.departmentId === id) { return emp; }
    });
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-20 10:24:02

订阅route.params以处理更改。然后注意,getEmployees()是异步的。因此,当您尝试筛选时,变量this.employees可能还没有初始化。你可以在订阅里面过滤。

做这样的事:

代码语言:javascript
复制
ngOnInit(): void {
    this.route.params.subscribe(params => {
        const id = +params['departmentId'];
        this.employeeService.getEmployees().subscribe(emps => 
            this.employees = emps.filter(emp => emp.departmentId === id)
       );
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48354845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档