当我在打字稿中使用reduce数组函数时如何迭代数组?

时间:2017-08-30 12:21:58

标签: angular

我有这个代码,其中我组数组:

  let result = this.events.reduce( function(r,a){  r[a.item] = r[a.item] || [];
        r[a.item].push(a);
        return r;
      }, Array());
        //this.events.map((event)=>{ console.log(event,'e'); this.items[event.item] = event; console.log('itemssss',this.items)});
        this.items = result;
        console.log(this.items);

我得到的结果是这样的: enter image description here

我怎样才能在html中迭代这两个数组?有什么建议吗?

所以我想首先从第一个数组显示,然后从第二个数组显示数据?

1 个答案:

答案 0 :(得分:1)

如果您希望将数组分开:

您可以对它们进行两次迭代。首先在主阵列和它包含的不同阵列上:

<ul>
    <li *ngFor="let item of items">
        <ul>
            <li *ngFor="let order of item">
                <!-- You can access objects properties here -->
                {{ order.statusName }} // <-- for example
            <li>
        </ul>
    <li>
</ul>

其他解决方案:

您也可以在循环之前合并它们:

所以将this.items = result更改为this.items = this.items.concat(result);

之后,您可以迭代this.items。例如:

<ul>
    <li *ngFor="let item of items">
        ...
        {{ item.statusName }}
        ...
    </li>
</ul>