簡體   English   中英

從json獲取數據,但僅用於一條記錄

[英]Get data from json but only for one record

我有這個JSON:

{
  "success": true,
  "return": {
    "totalItem": 7,
    "totalPages": 1,
    "pageSize": 7,
    "items": {
      "phones": [
        "(48) 9999-9999"
      ],
      "users": {
        "manager": {
          "id_user": "5819",
          "name": "Síndico Ilhas Belas",
          "user": "sindico.teste@domain.com",
          "photo": "https://domain.amazonaws.com/files/upload/2015/07/25/5819.55b32d90e69ab3.05638898_873f970f8d259.jpg"
        },
        "employees": [
          {
            "id_user": "2",
            "name": "José Perez",
            "user": "pepe@domain.com",
            "photo": "https://.amazonaws.com/files/upload/2013/10/07/2.52523a0451c3c5.59697102_7a4188d3.jpg",
            "groups": [
              {
                "id_group": "33",
                "name": "Portaria"
              }
            ],
            "work_details": {
              "work_schedule": "8-12hs e 14-18hs",
              "work_activities": "Supervisionar os trabalhos de conservação"
            }
          },
          {
            "id_user": "15142",
            "name": "Marcos Rojas",
            "user": "rojas@c.com",
            "photo": "http://www.domain.com/themes/intra/img/sf_ele.gif",
            "groups": [
              {
                "id_group": "589",
                "name": "Zeladoria"
              }
            ],
            "work_details": {
              "work_schedule": "8h 12h",
              "work_activities": "Zeladoria"
            }
          },
          {
            "id_user": "18833",
            "name": "Portaria",
            "user": "teste@domain.com",
            "photo": "http://www.domain.com/themes/intra/img/sf_ele.gif",
            "groups": [
              {
                "id_group": "33",
                "name": "Portaria"
              }
            ],
            "work_details": {
              "work_schedule": "8hs por dia. 8-12hs e 14-18hs",
              "work_activities": "Supervisionar os trabalhos de conservação"
            }
          }
        ],
        "boardMembers": [
          {
            "id_user": "8189",
            "name": "Ana Maria",
            "user": "8189",
            "photo": "http://www.domain.com/themes/intra/img/sf_ela.gif",
            "groups": [
              {
                "id_group": "722",
                "name": "Subsíndico"
              }
            ]
          },
          {
            "id_user": "11442",
            "name": "Luciana Zath",
            "user": "lzath@mail.com",
            "photo": "http://www.domain.com/themes/intra/img/sf_ela.gif",
            "groups": [
              {
                "id_group": "1456",
                "name": "Conselho fiscal"
              }
            ]
          }
        ]
      }
    }
  }
}

因為manager僅是一條記錄,所以在這段代碼中我無法通過ng-repeat獲得它

<div class="card" ng-repeat="(manager, name) in items">
    <pre>{{name}}</pre>
</div>

JSON返回所有數據,但是我只需要返回manager數據,例如:

姓名,用戶(電子郵件)和照片

和控制器:

// Controller of about.
appControllers.controller('aboutCtrl', function($scope, $mdBottomSheet, $mdToast, $mdDialog, About) {

    About.get(function(data) {
        $scope.items = data.return.items;
        console.log(data);
    })

}); // End of about controller.

employeesboardMembers可以與ng-repeat boardMembers正常工作,但經理的單記錄而不是

如果manager始終是單個對象,請執行以下操作:

 Manager: {{items.users.manager.name}}

然后重復雇員數組

 <div ng-repeat="employee in items.users.employees">
    Employee:  {{employee.name}}
appControllers.controller('aboutCtrl', function($scope, $mdBottomSheet, $mdToast,
    $mdDialog, About) {

    About.get(function(data) {
        $scope.items = data.return.items;
        $scope.manager = data.return.items.users.manager;       
        console.log(data);
    })
}); // End of about controller.

在html中:

 <p>{{manager.name}}</p>
 <p>{{manager.user}}</p>

如果items是數組,則只能使用ng-repeat遍歷items列表。 在JSON中, items是一個對象,因此您將不會獲得經理名稱。 只需使用{{items.users.manager.name}}即可獲得經理姓名。 另一方面,您可以使用ng-repeat遍歷items.users.employees ,因為它的employees屬性是一個數組。

<div class="card" ng-repeat="employee in items.users.employees">
    <pre>{{employee.name}}</pre>
</div>

您可以使用

{{items.users.manager}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM