Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angularjs ng表格分页问题_Angularjs_Ngtable - Fatal编程技术网

angularjs ng表格分页问题

angularjs ng表格分页问题,angularjs,ngtable,Angularjs,Ngtable,我遇到了一个ng表和分页的问题。基本上我有两个数据集,用户可以选择表中呈现的数据集 数据集1有2个页面,数据集2只有一个页面。现在的问题是,如果我导航到第2页,然后切换到数据集2,我会得到一个没有分页选项的空白表 您可以在下面创建的Plunker中进行测试: 我的代码几乎只是一个ngtable示例的复制和粘贴: var app = angular.module('main', ['ngTable']). controller('DemoCtrl', function($scope, $filt

我遇到了一个ng表和分页的问题。基本上我有两个数据集,用户可以选择表中呈现的数据集

数据集1有2个页面,数据集2只有一个页面。现在的问题是,如果我导航到第2页,然后切换到数据集2,我会得到一个没有分页选项的空白表

您可以在下面创建的Plunker中进行测试:

我的代码几乎只是一个ngtable示例的复制和粘贴:

var app = angular.module('main', ['ngTable']).
controller('DemoCtrl', function($scope, $filter, ngTableParams) {

$scope.datasets = ["1","2"];
$scope.dataset = "1";
var data1 = [{name: "One", age: 50},
            {name: "Two", age: 43},
            {name: "Three", age: 27},
            {name: "Four", age: 29},
            {name: "Five", age: 34},
            {name: "Six", age: 43},
            {name: "Seven", age: 27},
            {name: "Eight", age: 29},
            {name: "Nine", age: 34},
            {name: "Ten", age: 43},
            {name: "Eleven", age: 27},
            {name: "Twelve", age: 29},
            {name: "Thirteen", age: 34},
            {name: "Fourteen", age: 43},
            {name: "Fifteen", age: 27},
            {name: "Sixteen", age: 29}];

var data2 = [{name: "Jacob", age: 50},
            {name: "Jacob", age: 43},
            {name: "Jacob", age: 27}];

var getData = function() {
    return $scope.dataset === "1" ? data1 : data2;
};
$scope.$watch("dataset", function () {
    $scope.tableParams.reload();
});         
$scope.tableParams = new ngTableParams({
    page: 1,            // show first page
    count: 10,          // count per page
    sorting: {
        name: 'asc'     // initial sorting
    }
}, {
    total: function () { return getData().length; }, // length of data
    getData: function($defer, params) {
        var filteredData = getData();
        var orderedData = params.sorting() ?
                            $filter('orderBy')(filteredData, params.orderBy()) :
                            filteredData;

        $defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
    },
    $scope: { $data: {} }
});
}))

欢迎任何想法

谢谢, 凯文。


酷,那应该有用。我刚刚遇到了另一个类似的问题。只有一个数据集,但每行上都有一个删除图标。如果用户位于第二页并删除了所有行,那么它们将再次被卡住。有什么想法吗?
 $scope.$watch("dataset", function () {
          $scope.tableParams.$params.page=1;

            $scope.tableParams.reload();
        });