0

次のコードのif条件で私が理解していることは次のとおりです。

$scope.pagingOptions = {
    pageSizes: [250, 500, 1000],
    pageSize: 250,
    currentPage: 1
};

$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);

が変更され 、プロパティが変更さpagingOptionsれるたびに条件が true になるため、メソッドが実行されます。currentPageifgetPagedDataAsync

しかし、UI から変更しcurrentPageなくても、グリッドが更新されます。pageSizeこれは(私の理解によると)起こるとは思っていません。では、なぜそのグリッドが更新されるのでしょうか?

ここから、コードを取得しました:

http://angular-ui.github.io/ng-grid/Server-Side Paging Example見出し

4

3 に答える 3

0

ウォッチをもう 1 つ追加

$scope.$watch('pagingOptions.pageSize', function (newVal, oldVal) {
 if (newVal !== oldVal && newVal.currentPage !== oldVal.currentPage) {
      $scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage, $scope.filterOptions.filterText);
    }
}, true);
于 2015-08-05T06:47:50.927 に答える