Angular ngFor不迭代

时间:2019-12-13 09:24:24

标签: angular

这是我的模板

<div *ngIf="attachments">
    <div>
        {{ 'attachments' | translate }}
    </div>
    {{ attachments.data[0].title }} <!-- this works -->
    <div *ngFor="let item of attachments.data"> <!-- this doesn't -->
        <a [href]="item.href">{{ item.title }}</a>
    </div>
</div>

现在,当我在上面attachments.data[0].title这样打印标题时,它会显示,但是当我尝试遍历attachments.data时,它不会显示

对不起,我没有写。它不会显示任何错误,只是不会呈现

1 个答案:

答案 0 :(得分:5)

使用当前的有限信息,只有一个原因不起作用,那是因为它是带有数字字符串键的Object而不是Array

类似这样的东西:

this.attachments = {
  data: {
   0: { title: 'hi' },
   1: { title: 'bye' }
  }
};

您可以尝试在获取变量的地方重新分配attachments.data变量:

this.attachments.data = Object.values(this.attachments.data);