内部角度控制器内的过滤器表现不尽如人意

时间:2016-10-06 05:50:20

标签: angularjs json

我在以下方式使用角度控制器内的过滤器,根据我的要求,只应过滤$scope.codeSubFiltered而不是$scope.codeSub

过滤后,$scope.codeSub$scope.codeSubFiltered的大小/长度都会减少,数据会被过滤掉。

请找到以下代码:

$http.get("http://hackerearth.0x10.info/api/ctz_coders?type=json&query=list_submissions&page=1")
              .then(function(response) {
                  $scope.codeSub = response.data;       
                });  

        $scope.codeSubFiltered=$scope.codeSub;
         $scope.$watch('search', function(val)
            {        
                $scope.codeSubFiltered.websites= $filter('filter')($scope.codeSubFiltered.websites, {language: val});

                alert(Object.keys($scope.codeSubFiltered.websites).length);
                alert(Object.keys($scope.codeSub.websites).length);

            }

1 个答案:

答案 0 :(得分:1)

两个变量的变化原因是它们都引用同一个对象。

而不是:$scope.codeSubFiltered = $scope.codeSub;

执行: $scope.codeSubFiltered = angular.copy($scope.codeSub);