javascript - 如何修复(错误:any)=>Observable<any> is not assignable?

标签 javascript angular typescript error-handling rxjs6

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/

相关文章:

javascript - 在 Javascript 中使用 insidetext 来捕获值

javascript - 将 javascript 变量从客户端传输到服务器

javascript - 在 Angular/Typescript 中单击按钮/图标时如何将文本字段设置为输入字段?

javascript - 如何使扩展运算符仅通过非函数属性进行枚举?

typescript - NestJS 中的 Shopify Webhook

reactjs - 类型错误 : Cannot read property 'attach' of undefined makeStyles. js

javascript - NodeJS + AngularJS - 一段时间后,我得到 net::ERR_CONNECTION_RESET

javascript - 使用 Vue js 全局定义一个常量

Angular 多重错误处理程序

javascript - Angular 2 最终发布路由器单元测试