类型'HttpEvent <name []>不可分配给类型'name []'

时间:2019-11-25 11:25:28

标签: angular typescript angular-httpclient

这是我的代码:

export interface act {
  id: number;
  name: string;
}
public list!: act[];
getAll(token:any): void{
  this.http.get<act[]>('http://localhost:4200/test', token)
  .subscribe(
    (val) =>
      this.list = val
  );
}

我在this.list = val上遇到以下错误:

  

类型'HttpEvent '不可分配给类型'act []'。类型“ HttpSentEvent”缺少类型“ act []”中的以下属性:长度,弹出,推入,连续和另外16个。

我尝试在Google上搜索,在堆栈上阅读,但没有运气。我发现了类似的问题,但有些问题没有解决,而另一些则不同。

希望您能帮助我,谢谢。

1 个答案:

答案 0 :(得分:2)

您正在尝试发送请求正文,但是GET请求没有正文。 HttpClient.get()的第二个参数不是主体,而是一组选项,这些选项尤其会影响方法的返回结果。

因此,您应该使用POST或PUT而不是GET。

您还应该避免使用any类型,以使您和编译器都更容易理解所有内容(如果您使用正确定义的接口而不是{{ 1}})。