【问题标题】:Read Object Name from Inside of Arrays and Objects Angular2/4从数组和对象Angular2 / 4内部读取对象名称
【发布时间】:2017-10-24 07:01:09
【问题描述】:

我对如何读取这些数组和对象中的 project.name 感到困惑?我想显示project.name,构建project.description。小的...?如何在html表格行中迭代它?这是我在下面所做的。希望大家帮忙

 {
  "token": "eyJ": [
    {
      "id": 1,
      "organization_id": 1,
      "created_at": "2017-10-24 05:06:37",
      "updated_at": "2017-10-24 07:38:24",
      "organization": {
        "id": 1,
        "name": "Malayss",
        "logo": "default.png",
        "created_at": "2017-10-24 10:54:51",
        "updated_at": "2017-10-24 10:54:51",
        "projects": [
          {
            "id": 1,
            "name": "House",
            "description": "Small",
            "organization_id": 1,
            "created_at": "2017-10-24 02:41:50",
            "updated_at": "2017-10-24 02:41:50",
            "material_projects": [
              {
                "id": 1,
                "material_id": 1,
                "project_id": 1,
                "quantity": 10,
                "unit": "pcs",
                "purchased": 0,
                "balance": 10,
                "created_at": "2017-10-24 02:42:14",
                "updated_at": "2017-10-24 02:42:14",
                "material": {
                  "id": 1,
                  "sku": "1320484",
                  "name": "Cement",
                  "created_at": "2017-10-24 02:41:22",
                  "updated_at": "2017-10-24 02:41:22"
                }
              }
            ],
            "project_services": [
              {
                "service_id": 1,
                "project_id": 1,
                "unit": "square feet",
                "created_at": "2017-10-24 02:42:14",
                "updated_at": "2017-10-24 02:42:14",
                "service": {
                  "id": 1,
                  "sku": "734676",
                  "name": "Cleaning",
                  "created_at": "2017-10-24 02:41:36",
                  "updated_at": "2017-10-24 02:41:36"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}

html

<tr *ngFor="let project of projects.organization">
                  <td *ngFor="let inner of projects">{{ inner.name }}</td>
</tr>

【问题讨论】:

    标签: angular angular-ngmodel angular4-forms angular-ng


    【解决方案1】:

    我认为您需要将其更改为:

    <tr *ngFor="let project of projects">
     <td *ngFor="let inner of project.organization.projects">{{ inner.name }}</td>
    </tr>
    

    先循环项目,获取每个项目的组织,从组织中循环内部项目得到名称

    【讨论】:

    • 只是对投票感到好奇,因为这不起作用? ;)
    • 在给出这个答案后,问题似乎已被编辑。旧结构是{"projects": [ { "organization": { "projects": [{ "name": "Build" }] } }] }
    • 是的,似乎它实际上已经改变了,所以现在你的答案是正确的:) 但是当你得到你的支持时,迭代应该是let project of projects.projects,所以那时它不正确:P
    • 谢谢 john 但我看到 ajt 先得到了答案。无论如何,我赞成你
    【解决方案2】:

    您的迭代应该如下所示:

    <table>
      <ng-container *ngFor="let project of projects.projects"> 
        <tr>
          <th>Name</th>
          <th>Description</th>
        </tr>
        <tr *ngFor="let inner of project.organization.projects">
          <td>{{inner.name}}</td>
          <td>{{inner.description}}
        </tr>
      </ng-container> 
    </table>
    

    DEMO

    【讨论】:

    • 谢谢。但我也有描述。我这样做了,它破坏了视图。 {{ inner.name }} {{ inner.name }} organization.projects">{{ inner.description }}
    • 我有两个内部项目,它放在第一个项目旁边
    • 请问?不要删除我的代码?我没有关注:D
    猜你喜欢
    • 1970-01-01
    • 2022-10-19
    • 2021-08-22
    • 1970-01-01
    • 1970-01-01
    • 2020-11-29
    • 1970-01-01
    • 1970-01-01
    • 2018-08-24
    相关资源
    最近更新 更多