2016-09-28 6 views
0

$ 시계를().나는 2 시간을 코딩 할 필요가있다. 그들은이 변경 될 때이 <code>pagingOptions.pageSize</code> 및 <code>pagingOptions.currentPage</code>를 볼 수 있습니다

//watch pagingOptions[pageSize] 
    $scope.$watch('pagingOptions', function(newVal, oldVal) { 
    if (newVal !== oldVal && newVal.pageSize !== oldVal.pageSize) { 
     $scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage, $scope.filterOptions.filterText); 
    } 
    }, true); 

    //watch pagingOptions[currentPage] 
    $scope.$watch('pagingOptions', function(newVal, oldVal) { 
    if (newVal !== oldVal && newVal.currentPage !== oldVal.currentPage) { 
     $scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage, $scope.filterOptions.filterText); 
    } 
    }, true); 

아래의 방법으로 테스트해도 작동하지 않습니다. 작동하지 않습니다.

$scope.$watch('pagingOptions', function(newVal, oldVal) { 
    if (newVal !== oldVal && newVal.currentPage !== oldVal.currentPage && newVal.pageSize !== oldVal.pageSize) { 
     $scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage, $scope.filterOptions.filterText); 
    } 
    }, true); 

답변

0

난 항상 이런 식으로 내 전문가를 코딩 :

$scope.$watch(function() { 
    return $scope.pagingOptions; 
}, function(newVal, oldVal) { 
    // handle the changes here 
}, true); 

나는이 문제를 해결할 것이라고 생각 나는 개인적으로 과거에 같은 문제가 발생하여 다음과 같이 그들을 고정. 행운을 빕니다! .

+0

$ 범위 $ 시계 (함수() { \t \t 복귀 $의 scope.pagingOptions; \t} 함수 (newval이, 인 oldval) {$ \t \t scope.getPagedDataAsync ($ scope.pagingOptions.pageSize, $ 범위 .pagingOptions.currentPage, $ scope.filterOptions.filterText); \t}, true); – Leslie

+0

간단한 코드로 작업했습니다. 감사 – Leslie