类型 'Observable<UI[] | Promise<any>>' 不可分配给类型 'Observable<UI[]>'。类型 'UI[] | Promise<any>' 不可分配给类型 'UI[]'

Type 'Observable<UI[] | Promise<any>>' is not assignable to type 'Observable<UI[]>'. Type 'UI[] | Promise<any>' is not assignable to type 'UI[]'

我需要 return 一个 UI 的列表,我用这个方法:

getList(): Observable<UI[]> { 
        return this.httpClient.get("/api/listui").pipe(map(
            (response:Response) => {  return response.json(); },
        ),
            catchError((error) => { return throwError(error); }));
    }

在我的 vs 代码中,错误显示为:

"Type 'Observable<UI[] | Promise<any>>' is not assignable to type 'Observable<UI[]>'. Type 'UI[] | Promise<any>' is not assignable to type 'UI[]'"

任何人都可以帮助解决这个问题?

httpClient 默认会 return json 数据你不需要这样做 return response.json();

getList(): Observable<UI[]> { 
        return this.httpClient.get("/api/listui").pipe(
            catchError((error) => { return throwError(error); }));
    }