类型 'Observable<Object>' 不可分配给类型 'Observable<boolean>'

Type 'Observable<Object>' is not assignable to type 'Observable<boolean>'

我有一个错误: 类型 'Observable' 不可分配给类型 'Observable'。 类型 'Object' 不能分配给类型 'boolean'.

  deleteUser(userId: string): Observable<boolean> {
    return this.httpClient
      .delete(url, this.getHttpOptions())
      .map(res => {
        return res;
      })
      .catch(this.handleError);
  }

当我试图打印它时,我得到了 res 的类型作为布尔值。

res的类型需要为boolean,默认为any。通过以下方式替换地图:

map((res:boolean) => {
    return res;
  })

您可以通过移除您的 .map(它没有任何作用)来修复它:

deleteUser(userId: string): Observable<boolean> {
  return this.httpClient
    .delete(url, this.getHttpOptions())
    .catch(this.handleError);
}

在编译时,TypeScript 不知道 API 调用实际来自什么,它从声明和函数签名中推断出来。

      .delete<boolean>(url, this.getHttpOptions())

应该可以。

(是的,放弃 map)。