Angular中的多数组

时间:2015-11-13 07:17:14

标签: json angularjs multidimensional-array angularjs-scope angularjs-ng-repeat

我想制作多维JSON数组。因此,当我过滤id时,我将得到相应id的数据:

对于egs:ID 1022101视图应为

<li>x</li>
<li>y</li>
<li>z</li>

<div ng-app="myapp">
    <div ng-controller="w">  
        <ul ng-repeat="x in data | filter:1022101 ">
           <li>{{x.file}}</li>                
       </ul>            
   </div>
</div>

控制器:

var app = angular.module('myapp',[]);
app.controller('w',function($scope){
     $scope.data = [
               {"id":"1022101","file":["x","y","z"]},
               {"id":"1022102","file":["xa","sy","fz"]}
             ];
     });

Jsfiddle Demo

2 个答案:

答案 0 :(得分:1)

您可以使用| filter:{id:1022101}来过滤ID

jsfiddle

答案 1 :(得分:0)

如果我理解你正在尝试做什么,那么你可以使用这样的东西:

<ul ng-repeat="(id, file) in data | filter:id:1022101 ">
     <li>{{file.x}}</li>
     <li>{{file.y}}</li>
</ul>

我不是100%确定我是否正确编写过滤器,但您在ID中有值,因此您可以根据需要调整过滤器。

如果您的文件是Json数组,您可以在ng-repeat中再次进行ng-repeat,如

<ul ng-repeat="(id, file) in data | filter:id:1022101 ">
    <li ng-repeat="xFile in file">{{xFile}}</li>
</ul>