首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS:$watch

AngularJS:$watch
EN

Stack Overflow用户
提问于 2015-09-23 16:11:02
回答 1查看 574关注 0票数 0

我有一个属性:$scope.Users.length,根据它,我的应用程序显示分页编号。虽然属性更改,但分页不更改。我想添加$scope.$watch来处理它,我怎么做呢?

分页属性:

代码语言:javascript
复制
 $scope.totalItems = $scope.Users.length;
        $scope.currentPage = 1;
    $scope.itemsPerPage = 3;
    $scope.maxSize = (($scope.Users.length / 3) + 1) ; //Number of pager buttons to show

html中的分页:

代码语言:javascript
复制
<div>
        <pagination total-items="totalItems" ng-model="currentPage" max-size="maxSize" class="pagination-md" boundary-links="true" rotate="false" num-pages="numPages" ng-click="pageChanged(user)" items-per-page="itemsPerPage"></pagination>
    </div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-23 18:14:27

这样做的方法是,每次向页面添加新数据时都要对$watch进行$scope.totalitems。

$watch函数(放在add data函数中):

代码语言:javascript
复制
$scope.$watch('totalItems', function(newValue, oldValue) {
        $scope.pageChange($scope.Users.length);
    });

将更改$scope.totalitems的函数,它负责页面的数量:

代码语言:javascript
复制
$scope.pageChange = function(pageNo) {
        $scope.totalItems = pageNo;
    };
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32744533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档