如何从数组中存在的多个对象访问字段

时间:2016-02-22 07:25:47

标签: arrays angularjs ionic-framework ionic2

我有一个名为$scope.mobData=[];

的空数组

使用$ http.get(..)我得到10个json对象并成功推送到数组,每个对象有7个数据,但我需要在每个对象中只有两个字段,名为brandCode和brandName,可在所有10个对象中使用。但在我的UI部分,我无法显示我的品牌名称和品牌代码数据,这是我的HTML代码

<table >
            <thead>
              <th>BrandCode</th>
              <th>BrandName</th>
              <th>Action</th>
            </thead>

            <tbody>
            <tr ng-repeat="mobData in mobDatas">
              <td>{{mobData[index].brandCode}}</td>
              <td>{{mobData[index].brandName}}</td>
              <td>
                <button type="button" class="button button-positive" ng-click="editMobData(mobData)">Edit</button>
                <button type="button" class="button button-assertive" ng-click="deleteMobData(mobData)">Delete</button>
              </td>
            </tr>
            </tbody>
</table>

当我使用{{mobData[o].brandCode}}我能够查看数据但不使用mob [0]时,我无法查看我的数据。我也试过这个{{mobData.brandCode}}我无法查看我的数据

3 个答案:

答案 0 :(得分:0)

mobData是对象,您通过使用索引器将其用作集合,您可能需要直接访问属性。此外,如果您的收藏集名称为mobData,那么ng-repeat将位于mobData但不会mobDatas

我已经进行了现场演示,其中我拥有包含brandCode和brandName字段的对象数组。我在ng-repeat中使用$ scope中的数组来渲染表格行,就像你在问题中一样。

<强> Live Demo

<tr ng-repeat="mobDataObj in mobData">
       <td>{{mobDataObj.brandCode}}</td>
       <td>{{mobDataObj.brandName}}</td>

注意你必须设置角度的初始状态。

app = angular.module('aaa', []);
app.controller('ccc', function($scope) {
$scope.mobData = [{brandCode: 'brand code 1', brandName: 'Brand Name 1'},
                {brandCode: 'brand code 2', brandName: 'Brand Name 2'},
                {brandCode: 'brand code 3', brandName: 'Brand Name 3'}];

});

答案 1 :(得分:0)

这样做:

<td>{{mobData.brandCode}}</td>
<td>{{mobData.brandName}}</td>

您不需要$index,因为您已经mobDatamobDatas[$index]相同

答案 2 :(得分:0)

您的绑定似乎有误,应该是

{{mobData.brandCode}}
{{mobData.brandName}}