2015-01-03 146 views
0

数组“回应”是我从我的PHP文件得到NG重复过滤器不工作

$http.get(encodedpage).success(function(response) { 
     $scope.friends = response; 
} 

它有一堆值和过滤器工作正确

<input type="search" ng-model="q" /> 
    <div class="animate-repeat" ng-repeat="x in friends | filter:q as results">  
    {{x.name}} 
    </div> 

当我想只显示它的一个范围,过滤器不再工作。 虽然一切都显示并正确显示。

$http.get(encodedpage).success(function(response) { 
    for (var i = 0; i < 3; i++) { 
      $scope.friends[i] = response[i]; 
     } 
} 

我放弃了为什么。

这里是一个例子的jsfiddle

http://jsfiddle.net/U3pVM/11646/

+0

可能发布您的代码在plnkr或jsfiddle?我试图重现这种情况,它适用于我 – Karthik

+0

嗨,我刚刚添加了一个jsfiddle的例子,请看这里:http://jsfiddle.net/U3pVM/11646/'friendsreduced'根本不被过滤。 –

回答

1

的问题是与阵列声明。看起来你已经将它声明为一个对象,并尝试将元素设置为它。

$scope.friendsReduced = []; 
for (var i = 0; i < 2; i++) { 
    $scope.friendsReduced[i] = $scope.friends[i]; 
} 

Jsfiddle已更新供您参考。

+0

神圣的烟,真的解决了它,非常感谢你。 –