ng-tableを使用してサーバーサイドテーブルを実装しようとしています。しかし、getData
を使用しているときは、$defer.resolve is not a function
またはparams is not defined
のいずれかと表示されます。ngTable - サーバーサイドページネーションgetDataエラー
getData
機能で$defer
が使用されていない場合、私はparams
を得ることができます。
これは私のコードの一部です:
angular.module('ngTableTest', ['ui.router', 'ngTable'])
.controller('Table', function($state, NgTableParams){
var vm = this;
vm.niceTable = new NgTableParams({}, {
getData: function($defer, params) {
$http.get('/app/getdata')
.success(function(data) {
params.total(data.count);
$defer.resolve(data.data);
});
}
});
});
ありがとうございました!
angular.module('ngTableTest', ['ui.router', 'ngTable'])
.controller('Table', function($state, $q, NgTableParams){
var vm = this;
vm.niceTable = new NgTableParams({}, {
getData: function(params) {
var promise =
$http.get('/app/getdata')
.success(function(data) {
params.total(data.count);
// here you can do some data manipulation
return $q.resolve(data); // this can be skipped if no data manipulation is required
});
}
});
return $q.resolve(promise);
});
がNgTableの現在のバージョンに注意してください:あなたはhould
これは 'params'エラーを修正しましたが、返されたデータはテーブルに表示されません。 – Bill