0
私は角度のついていないので、実際に私の頭を丸めているわけではありません。Angularjs ng-tableページ設定
私は工場間でコントローラ間でデータを共有しています。私はこれをやっています。大量のデータをリストする要求がたくさんあるためです。
(function() {
'use strict';
angular
.module('app.customers')
.controller('CustomersController', CustomersController)
.factory('dataShare',function($rootScope,$timeout){
var service = {};
service.data = false;
service.sendData = function(data){
this.data = data;
$timeout(function(){
$rootScope.$broadcast('data_shared');
},100);
};
service.getData = function(){
return this.data;
};
return service;
});
そして、私は
$http.post("http://api.dev/v1/customers/search", $scope.searchData)
.then(function (response) {
$scope.customers = response.data;
dataShare.sendData(response.data);
},
//....
をやっているコントローラに私は別の私がこれを持ってNgTablesためのコントローラがあります。
$scope.$on('data_shared',function(){
$scope.customers = [{}];
var data = dataShare.getData();
console.log("here");
$scope.customers = data;
console.log($scope.customers.length);
vm.tableParams3 = new ngTableParams({
page: 1, // show first page
count: 10,
// count per page
}, {
total: $scope.customers.length, // length of data
getData: function (params) {
// use build-in angular filter
var filteredData = params.filter() ?
$filter('filter')($scope.customers, params.filter()) :
$scope.customers;
var orderedData = params.sorting() ?
$filter('orderBy')(filteredData, params.orderBy()) :
$scope.customers;
params.total(orderedData.length); // set total for recalc pagination
return (orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
データが正しく渡されると、コンソールの出力を.logは期待されているものですが、ページカウントは完全に無視されています。しかし、私が下のページオプションを変更すると、そのページから始まります。
vm.tableParams3 = new ngTableParams({
page: 1, // show first page
count: 10, // count per page
},
私はすべての種類、およそ20種類の質問とNG-テーブルのドキュメントを読むが、どんなに私が何をすべきか、私はそれが仕事を得るカントを試してみました。どんな助けもありがとう。