首页 > 解决方案 > Cant Fix Error NgFor 仅支持绑定到 Iterables,例如 Arrays Angular9

问题描述

我是 Angular 的新手,我看过类似的问题,但没有一个对我有帮助。我将收到一个如下所示的对象,我需要创建一个包含信息的列表:

{
"Status": "OK",
"Data": [
    {
        "Id": 1,
        "Solicitante": "Juan Perez",
        "FechaHora": "2020-08-13 20:00",
        "Personas": 10,
        "Fono": " 56 99 222-2222",
        "Email": "miemail@gmail.com",
        "Mensaje": "Quiero una cotizacion urgente",
        "Estado": "Ingresado",
        "Canal": "Pagina Web"
    },
    {
        "Id": 2,
        "Solicitante": "Rodrigo Trigo",
        "FechaHora": "2020-08-13 21:00",
        "Personas": 3,
        "Fono": " 56 99 222-3333",
        "Email": "mi@gmail.com",
        "Mensaje": "Quiero otra cotizacion urgente",
        "Estado": "Ingresado",
        "Canal": "Facebook"
    },
    {
        "Id": 3,
        "Solicitante": "Luis Silva",
        "FechaHora": "2021-01-13 08:00",
        "Personas": 3,
        "Fono": " 56 99 444-3333",
        "Email": "lsilva@gmail.com",
        "Mensaje": "Quiero cotizacion urgente",
        "Estado": "Ingresado",
        "Canal": "Whatsapp"
    },
    
]

这是我接收它的http服务:

     getPosts()
  {
    return this.http.get(this.url)
  }

我这样调用服务:

data:any;
  constructor(private postData:PostsService){}
  ngOnInit()
  {
    this.postData.getPosts().subscribe((result)=>{
      console.warn("result", result)
      this.data=result
    })
  }

但是当页面加载时,它返回:

ERROR Error: Cannot find a differ supporting object '[object Object]' of type 'object'. NgFor only supports binding to Iterables such as Arrays.
   

我无法修复错误,我已经尝试过,但它超出了我的范围。请帮忙

标签: angular

解决方案


您没有在 html 中显示您的 ngFor 代码。但很明显,您正在尝试遍历一个不是数组的对象。我的猜测是你想做这样的事情:

<div *ngFor="let item of data.Data">

推荐阅读