Angular 7-如何将HTTP请求与可观察对象链接

时间:2019-05-17 14:48:26

标签: javascript angular typescript rxjs

我希望能够删除警报,但前提是未将此警报分配给用户。为此,我需要获取用户列表,并检查是否没有用户分配此警报。我设法通过将2个请求与可观察对象链接起来来使其工作,但是有更好的方法来实现这一点吗?

p1.stdout

1 个答案:

答案 0 :(得分:0)

您可以使用answer中提到的flatMap运算符。

deleteAlert(id: number) {
      this.usersService.getUsers().flatMap(
        (users) => {
          if (users.filter((value) => value.alert.id === id).length > 0) {
            console.log('Deassing alert to all user first');
          } else {
           return this.alertService.deleteVillain(id);
        }
      }).subscribe(data=>{
         this.alertsList = this.villainsList.filter(alerts=>alerts.id!==id);
      });
}