javascript - 分页仅在第一页显示我的所有项目

标签 javascript angularjs twitter-bootstrap

我在 Plunker 上的问题示例

分页在第一页显示我的所有项目,而其他页面是空的,我正在使用 bootstrap 3,我的想法是每页显示 6 个项目,每行 3 个项目,如果有人可以,我将不胜感激帮助我。

Controller :

var controllerPagination = angular.module('controllerPagination', ['ui.bootstrap']);


// Pagination events
controllerPagination.controller('PageEvents', ['$scope', function ($scope) {


        // pagination controls
         $scope.filteredTodos = []
    $scope.currentPage = 1;
    $scope.entryLimit = 6; // itemEvents per page
    $scope.noOfPages = Math.ceil($scope.totalItems / $scope.entryLimit);
    $scope.itemEvents = [
    {"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}
    ,{"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}
    ,{"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}
    ,{"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}
    ,{"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}
    ,{"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}
    ,{"title": "bla bla bla","date":"10-12-2017" ,"content": "......", "lien":"#/"}

    ];

    $scope.totalItems = $scope.itemEvents.length;
    $scope.chunkedItems = [] ;

    while ($scope.itemEvents.length > 0)
    $scope.chunkedItems.push($scope.itemEvents.splice(0, 3));



  $scope.$watch('currentPage + entryLimit', function() {
    var begin = (($scope.currentPage - 1) * $scope.entryLimit)
    , end = begin + $scope.entryLimit;

    $scope.filteredTodos = $scope.chunkedItems.slice(begin, end);
  });

}]);``
<小时/>
<body ng-app="controllerPagination">

     <section id="" >
        <div class="container" ng-controller="PageEvents">
            <div class="row"  ng-repeat="itemEvents in filteredTodos ">

                    <div class="col-lg-4 col-md-4 col-sm-4 " ng-repeat="event in itemEvents">
                        <div class="portfolio-item">

                                <h5 >{{event.title}}</h5>
                                <div class="" >
                                <div class="preview btn btn-success ">{{event.date}}</div>
                                <p>
                                    {{event.content}}
                                </p>
                                <a class="preview"  href="{{event.lien}}" >
                                    <i class="fa fa-microphone fa-5x"></i>
                                        read more
                                </a>
                                </div>
                        </div>
                    </div>

            </div>
        <pagination ng-model="currentPage" max-size="noOfPages" total-items="totalItems" items-per-page="entryLimit"  boundary-links="true"></pagination>
        </div>

    </section>
  </body>

最佳答案

entryLimit 实际上是每 3 个项目,因此要每页显示 6 个项目,您需要将其设置为 2,而不是 6。

这是一个更新的插件:http://plnkr.co/edit/FfYHdjlcgCivESdfZUUF?p=preview

关于javascript - 分页仅在第一页显示我的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42543701/

相关文章:

javascript - 动态图像刷新

javascript - Babel 翻译的 React 仍然需要 JSXTransformer

javascript - 如何将 anchor 标记格式化为字符串?

twitter-bootstrap - PhoneGap 应用程序中的 Topcoat 与 Bootstrap 3 性能对比

javascript - Resizer 扩展和最小化 div

java - 如何在java中创建嵌套的json

jquery - Twitter Bootstrap Javascript 轮播多事件元素转换

angularjs - 在angularjs路由中更改路由路径而不重新加载 Controller 和模板

angularjs - Protractor 测试的执行顺序

jquery - 在 bootstrap carousel 中使用图像而不是幻灯片的背景