我不知道我做错了什么,或者根本不行。
我有服务
export class Service {
constructore(private http: HttpClient){}
async delete(id:number){
try{
return this.http.fetch('api/deleteItem?id='+id,{method:'post'})
} catch(error){
console.log(error);
throw error;
}
}
}
并且消费者称之为:
async deleteItem(item){
try{
let result = await this.myService.delete(this.item.id);
this.model.items.remove(item);
} catch(error){
console.log(error);
}
}
现在,如果webapi服务抛出异常,我的catch块就无法捕获它。所以它会从model.items中删除它,尽管它不应该。
为什么会这样?
答案 0 :(得分:1)
发现错误。 我使用的http拦截器不能处理来自http的错误,只是将响应作为json对象返回。