Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays AngularJS:显示响应数组的第一个元素_Arrays_Angularjs_Angularjs Scope_Angularjs Ng Repeat_Angularjs Filter - Fatal编程技术网

Arrays AngularJS:显示响应数组的第一个元素

Arrays AngularJS:显示响应数组的第一个元素,arrays,angularjs,angularjs-scope,angularjs-ng-repeat,angularjs-filter,Arrays,Angularjs,Angularjs Scope,Angularjs Ng Repeat,Angularjs Filter,我目前有一个带有两个动态下拉列表的表单(Location&Branch)。当选择一个Location值时,Branch将自动使用该位置填充相应的分支 <select ng-model="formData.location" ng-options="rg as rg.type for rg in region"> <option value="">Choose Location</option> </select> <

我目前有一个带有两个动态下拉列表的表单(
Location
&
Branch
)。当选择一个
Location
值时,
Branch
将自动使用该位置填充相应的分支

<select ng-model="formData.location" 
        ng-options="rg as rg.type for rg in region">
    <option value="">Choose Location</option>
</select>

<select ng-model="formData.branches" 
        ng-options="c as c[formData.location.displayName] for c in formData.location.data | orderBy:'branch'">
    <option value="">Choose Branch</option>
</select>
现在,在表单内部,
分支中的每个
选项
更改
,都会有一个从我的数据库中的表中预生成的代码(分配到其每一行),由
ng repeat
获得,如下所示:

<div ng-repeat="codes in response">
  <span ng-if="((codes.branch == formData.branches.alias) && (codes.taken == 0))">
  {{codes.code}}
</div>
有人告诉我,如果我想得到每个数组的第一个元素,可以在控制器中执行此操作,但我不知道如何执行此操作。当我有时间的时候,我会发布一个plunker。我现在就需要解决这个问题,因为我要在一天结束前完成最后期限


我希望这个问题即使没有一句废话也能弄清楚。提前谢谢

您可以通过管道将多个过滤器连接在一起,第一个过滤器基于分支进行过滤,第二个过滤器限制返回项目的数量:

<div ng-repeat="codes in response | filter: {branch: formData.branches.alias, taken: 0} | limitTo: 1">
   {{codes.code}}
</div>
并像这样使用它:

<div ng-repeat="item in items | filter: filterBy('foo', 'bar')">


你能发布“违规”代码吗,即不符合你要求的代码
{code.code}
AngularJS过滤器只获取我数据库中表的第一个索引。这不是我想要的。我需要在每个
分支的
上选择
响应数组的第一个元素
limito:1
将获取
响应数组的第一个元素
如果
您需要获取在
ng中使用的条件,并为
ng repeat
创建自定义筛选器。然后放入过滤器,限制:1将基于过滤后的数组,而不是整个数组array@NewDev
limito:1
只获取第一个索引,而不是第一个元素。我运行它,
DZXXK768
是唯一一个返回的,即使在
选项
分支
更改后也是如此。这很有效!谢谢!:)
<div ng-repeat="codes in response | filter: {branch: formData.branches.alias, taken: 0} | limitTo: 1">
   {{codes.code}}
</div>
$scope.filterBy = function(a, b){
  return function(item){
    return item.foo === a || item.bar === b;
  }
}
<div ng-repeat="item in items | filter: filterBy('foo', 'bar')">