2016-09-28 32 views
0

我可以看pagingOptions.pageSizepagingOptions.currentPage當他們被改變。

//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