在saveExpense()
方法中,当传递错误处理catchError (this.handleError<any>('Add Expense', []))
时,此方法将突出显示并显示错误: Argument type (error:any)=>Observable<any> is not assignable to parameter type (err:any, caught:Observable<T>)=>never
。怎么解决?
saveExpense(userid, oExpense) {
const httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': `${this.jwtToken}`
})
};
return this.http.post(`http://localhost:5555/api/expense/${userid}`, JSON.stringify(oExpense), httpOptions).pipe(
tap(
(response: ServerMessage) => console.log(response)
),
catchError(this.handleError('Add Expense', []))
);
}
private handleError<T>(operation = 'operation', result?: T) {
return (error: any): Observable<T> => {
console.error(error);
console.log(`${operation} failed: ${error.message}`);
return of(result as T);
};
}
最佳答案
该语句表示希望给catchError()
一个以(err:any, caught:Observable<T>)=>never
签名为参数的函数。
传递给catchError()
的函数的签名(参数和返回类型)是什么?
关于javascript - 如何修复(错误:any)=>Observable<any> is not assignable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53564351/