提问者:小点点

类型可观察<对象>不可分配给类型可观察


GetUserDetailsById(Id): Observable<userdetails> {

    return this.httpclient.get(this.BaseURI + '/user/UserDetailsById/' + Id).map((response: Response) => <userdetails>response.json())
  }

1. constructor(private httpclient: HttpClient)

2. export class userdetails
{
  idUser: number;
  firstName: string;
  lastName: string;
  email: string;
  permissions: string;
  isActive: boolean;
  displayRole: number;
}

删除. map时出错((response:Response)=

错误:类型可观察

返回this. http.get(this.BaseURI'/user/UserDetailsById/'Id).map((response:Response)=

  • 构造函数(私有超文本传输协议:Http)

共2个答案

匿名用户

这是正确的语法:

getFromHttp(): Observable<ResponseAfterMap> {
return this.http.get<ResponseFromHttp>(this.BaseURI + '/user/UserDetailsById/' + Id).map((response: ResponseFromHttp) => response.json())
}

匿名用户

您需要定义可观察对象的泛型类型。

在您的情况下,只需添加Object类型:

GetUserDetailsById(Id): Observable<Object> {
    /* ... */
}

但是,如果您知道对象将是什么样子,您可能希望返回一些其他类型,例如接口。

interface myInterface {
    id: number;
    name: string
}

GetUserDetailsById(Id): Observable<myInterface> {
    /* ... */
}

如果您不确定类型是什么,您可以返回任何(但不建议这样做)。

GetUserDetailsById(Id): Observable<any> {
    /* ... */
}