我想知道如何替代我自己的类而不是像下面这样的HttpErrorResponse。
onSendFormDataClicked(event){
this.http.post(url, body).catch((response:MyErrorClass)=>{
console.log(response.GetErrorMessage());
});
}
export class MyErrorClass extends HttpErrorResponse{
public GetErrorMessage(){
return "My Custom logic for error handling";
}
}
我尝试了此操作,但获取GetErrorMessage()不是函数。
答案 0 :(得分:0)
您似乎要尝试将this.http.post
捕获处理程序中的响应参数更改为MyErrorClass
类型。但是,如果不重写this.http.post
方法本身,就无法执行此操作,我怀疑这是您要执行的操作。
相反,您可以在catch块中实现自定义错误处理:
onSendFormDataClicked(event) {
this.http.post(url, body).catch((response) => {
const error = new MyErrorClass(response);
console.log(error.getErrorMessage());
});
}
export class MyErrorClass {
constructor(response: HttpErrorResponse) {
// Your logic here.
}
getErrorMessage() {
return "My Custom logic for error handling";
}
}