【问题标题】:Ionic 3 : How to display array of arrays?Ionic 3:如何显示数组数组?
【发布时间】:2019-03-14 12:52:29
【问题描述】:

我有一个以下受控数组列表,如何显示该列表?

我试过了

this.item = this.data.["0"]  // this is throwing an error

是否有其他解决方法可以实现这一点?

【问题讨论】:

  • 最外面的数组有必要吗?您对接收到的数据结构有任何控制权吗?
  • 不,我不希望最外面的数组完全没有必要。我收到的数据是从其他页面推送的。我怎样才能切掉外部数组?因为所有来自其他页面的数据都将被推送到列表中,正如您在图片中看到的那样
  • 你试过 this.item = this.data[0] 吗??
  • 是的。它给了我一个错误 this.item is undefined
  • 通过运行内部循环来获取数据。 <div *ngFor="let a of data" > {{a.itemId}} <p *ngFor="let b of data.size">{{b.size}}</p> <p *ngFor="let c of data.price">{{c.price}}</p> </div>

标签: ionic-framework ionic3


【解决方案1】:

数组中有一个数组。

要显示列表,您必须遍历数组中的项目。因为你的输出是数组中的一个数组,所以你可以从外部数组的第一个元素开始循环。

例子:

<ion-list>
  <button ion-item *ngFor="let item of items[0]">
    {{ item.item_id }}
 </button>
</ion-list>

【讨论】:

  • 抛出错误“找不到类型为 'object' 的不同支持对象 '[object Object]'。NgFor 仅支持绑定到 Iterables,例如数组。”
  • 好的。您可以使用获取数据的功能更新您的问题吗?我们可能会在那里发现一些东西......
  • @HarshMaisheri 乐于助人!下一个问题;)
  • 如何在 ts 文件中访问它?我试过 this.items[0].item_id 但它说无法读取 item_id 的属性。你能帮忙吗
  • this.items[0] 将您带到外部数组中的第一个元素。从那里你有三个新的阵列。要访问第二个内部数组的 item._id,可以使用 this.items[0][1].item_id。但最好你应该重写你的数据输入,这样你就失去了外部(不必要的)数组。
【解决方案2】:

假设您的父数组名为data,您可以使用this.data[0] 访问第一个元素。您还可以执行其他操作,例如遍历数组中的项目等。

【讨论】:

  • tired this.data[0] 输出未定义:(
猜你喜欢
  • 2019-09-10
  • 2019-11-03
  • 1970-01-01
  • 2017-12-12
  • 1970-01-01
  • 2019-08-14
  • 2018-02-01
  • 2018-09-27
  • 1970-01-01
相关资源
最近更新 更多