我尝试发出http请求,然后返回响应对象或bool。并不重要。但我无法发现错误。我有一个handleError函数,但它不能正常工作。
我的代码现在看起来像这样。
服务
updateProduct(product: Product): Promise<number> {
return this.http.put('/api/products/1' + product.id,product)
.toPromise()
.then(response => response.status)
.catch(this.handleError);
}
private handleError(error: any): Promise<any> {
//console.error('An error occurred', error); // for demo purposes only
return Promise.reject(error.message || error);
}
保存功能
onSave(): void {
this.productService.updateProduct(this.product)
.then(() => this.goBack())
.catch(er => console.log(er));
}
我怎样才能让它发挥作用?
答案 0 :(得分:3)
我看到你在错误消息存在时返回
return Promise.reject(error.message || error);
如果你想用它操纵,则返回整个error
对象,而不只是message
。
return Promise.reject(error);