使用智能表的angularjs分页

使用智能表的angularjs分页,angularjs,smart-table,Angularjs,Smart Table,通过使用角度智能表格,如何使用偏移值获得结果集。 例如,我在数据库中有100条记录 首先,我需要从数据库中获取20条记录,每页只显示10条 单击第3页后,需要查询数据库(服务调用)并获取另外20条记录…等(但第2页没有服务器调用) 我正在使用SmartTablePipe/ajax插件来显示记录 如何使用这个来实现 <div class="table-container" ng-controller="pipeCtrl as mc"> <table cla

通过使用角度智能表格,如何使用偏移值获得结果集。 例如,我在数据库中有100条记录

  • 首先,我需要从数据库中获取20条记录,每页只显示10条
  • 单击第3页后,需要查询数据库(服务调用)并获取另外20条记录…等(但第2页没有服务器调用)
  • 我正在使用SmartTablePipe/ajax插件来显示记录

    如何使用这个来实现

    <div class="table-container" ng-controller="pipeCtrl as mc">
                <table class="table" st-pipe="mc.callServer" st-table="mc.displayed">
                    <thead>
                    <tr>
                        <th st-sort="id">id</th>
                        <th st-sort-default="reverse" st-sort="name">name</th>
                        <th st-sort="age">age</th>
                        <th st-sort="saved">saved people</th>
                    </tr>
                    <tr>
                        <th><input st-search="id"/></th>
                        <th><input st-search="name"/></th>
                        <th><input st-search="age"/></th>
                        <th><input st-search="saved"/></th>
                    </tr>
                    </thead>
                    <tbody ng-show="!mc.isLoading">
                    <tr ng-repeat="row in mc.displayed">
                        <td>{{row.id}}</td>
                        <td>{{row.name}}</td>
                        <td>{{row.age}}</td>
                        <td>{{row.saved}}</td>
                    </tr>
                    </tbody>
                    <tbody ng-show="mc.isLoading">
                    <tr>
                        <td colspan="4" class="text-center"><div class="loading-indicator"></div>
                        </td>
                    </tr>
                    </tbody>
                    <tfoot>
                    <tr>
                        <td class="text-center" st-pagination="" st-items-by-page="5" colspan="4">
                        </td>
                    </tr>
                    </tfoot>
                </table>
            </div> 
    
    
    身份证件
    名称
    年龄
    救人
    {{row.id}}
    {{row.name}
    {{row.age}
    {{row.saved}}
    

    普朗克密码

  • 将页面大小设置为10

  • 为从服务器获取的行维护服务级别数组对象(var fetchedData)

  • 只有在客户端没有所需数据量时才调用服务器

  • 始终从fetchedData筛选分页数据

  • 像这样的服务

        var fetchedData = [];
    
        function getPage(start, number, params) {
    
            if (fetchedData.length < (start + number)) {
                //get the next 20 rows from the server and add to fetchedData;
            }
    
            var filtered = params.search.predicateObject ?
                $filter('filter')(fetchedData, params.search.predicateObject) :
                fetchedData;
            //rest of the logic 
    
    var fetchedData=[];
    函数getPage(开始、编号、参数){
    if(fetchedData.length<(开始+编号)){
    //从服务器获取接下来的20行并添加到fetchedData;
    }
    var filtered=params.search.predicateObject?
    $filter('filter')(fetchedData,params.search.predicateObject):
    获取数据;
    //其余的逻辑
    
    您需要添加
    st safe src=“tablecollection”
    以及
    st table=tablerow

    那么

    
    
    FMI, 资料来源:

    <tr ng-repeat="row in tablerow">