尝试diff'[object Object]'时出错。当我调用get时,只允许数组和迭代

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尝试diff'[object Object]'时出错。当我调用get时,只允许数组和迭代相关的知识,希望对你有一定的参考价值。

我有我的servers.service.tsGET REQUEST这个:

  getServers(){
     return this.http.get('https://*******.firebaseio.com/data.json').map((response: Response)=>{const data=response.json();console.log(data);return data;});
}

在我的app.component.ts中,我这样做:

onGet(){
    this.serverService.getServers().subscribe(
      (servers: any[])=> this.servers=servers,
      (error)=>console.log(error)
    );
  }

我像db firebase一样使用它会抛出这个异常

尝试diff'[object Object]'时出错。只允许数组和迭代

当我打电话给onGet()。有人可以帮帮我吗?

答案

ngFor仅接受数组格式数据。但是你的服务返回非数组对象。这就是你得到这个错误的原因。

请尝试以下代码

const data=response.json().results;

代替

 const data=response.json()

以上是关于尝试diff'[object Object]'时出错。当我调用get时,只允许数组和迭代的主要内容,如果未能解决你的问题,请参考以下文章