我正在尝试发出一个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));
}
我怎样才能让它发挥作用?
最佳答案
我看到你在 error.message 存在时返回它
return Promise.reject(error.message || error);
如果您想对其进行操作,请返回整个error
对象,而不仅仅是message
。
返回Promise.reject(错误);
关于http - 如何在Angular2中获取http请求中的状态代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42003304/