如何使用NgFor在对象上循环播放?

时间:2018-09-11 14:28:11

标签: html angular

就我而言,我有很多学生,他们的姓名,电子邮件,电话等...和一个对象注释:

{
    "_id" : ObjectId("5b9551a60e89ad15a8ff77fb"),
    "name" : "RICHE",
    "note" : [ 
        {
            "matiere" : "Français",
            "note" : "10/20",
            "date" : "01/09/2018"
        }, 
        {
            "matiere" : "Mathématique",
            "note" : "13/20",
            "date" : "11/09/2012"
        }, 
        {
            "matiere" : "Anglais",
            "note" : "07/20",
            "date" : "26/09/2018"
        }, 
        {
            "matiere" : "Anglais",
            "note" : "06/20",
            "date" : "13/11/2018"
        }, 
        {
            "matiere" : "EPS",
            "note" : "20/20",
            "date" : "29/11/2012"
        }
    ]
}

使用ngFor,我可以在姓名,名字,电话,电子邮件等上创建一个循环...但在备注上不可以

<tr *ngFor="let kk of Repdata | filterdata: queryString : 'name' | orderBy: order; let ind = index">
    <td>{{ind + 1}}</td>
    <td>{{kk.name}}</td>
</tr>

我在与ngFor相同的表格中创建了一个模态,并且可以显示ect ...,但是当我尝试这样做时:

    <tr>
      <td>Matière : </td><td>{{kk.note}}</td>
    </tr>

我用消息[object Object]创建一个循环, 当我尝试这个时:

<tr>
<td>Matière : </td><td>{{kk.note.matiere}}</td>
</tr>

什么都没显示

1 个答案:

答案 0 :(得分:1)

这是因为在您的作用域kk.note中数组kk.note.matiere是未定义的,因此您还必须遍历它:

<tr *ngFor="let r of kk.note">
    <td>Matière : </td>
    <td>{{r.matiere}}</td>
</tr>