如果没有找到任何内容,角度服务查询方法应该发出错误

时间:2017-05-09 09:57:38

标签: angular rxjs reactive-programming

假设我使用方法getProducts

设计服务

我像这样使用它

this.service.getProducts('someProduct').subscribe(product => {},
err => {});

如果'someProduct'不存在,服务是否会发出错误?

或者它应该只是正常发出null

1 个答案:

答案 0 :(得分:0)

在你的情况下,我不会抛出错误。对于404处理,我使用catch运算符,例如:

this.service.getProducts('someProduct')
.catch( err => {
        if (err.status ===404){
          console.log(`Product ${someProduct} not found`) ;
          return Observable.of()}    // empty observable
      })
.subscribe(product => {},
           err => {});