Angularjs ngTable firebase get-TypeError:未定义不是函数
我将使用ngTable,我是AngularJS的新手,我不知道问题出在哪里:-( 我的错误:Angularjs ngTable firebase get-TypeError:未定义不是函数,angularjs,firebase,ngtable,Angularjs,Firebase,Ngtable,我将使用ngTable,我是AngularJS的新手,我不知道问题出在哪里:-( 我的错误: TypeError: undefined is not a function at Object.InputController.$scope.tableParams.ngTableParams.getData 我的代码: angular.module("kasseev", ["firebase","ngTable"]); function InputController($scop
TypeError: undefined is not a function
at Object.InputController.$scope.tableParams.ngTableParams.getData
我的代码:
angular.module("kasseev", ["firebase","ngTable"]);
function InputController($scope, $firebase, ngTableParams) {
var BaseRef = "https://xxxxxxx/";
var FBBaseRef = new Firebase(BaseRef);
var KontenRef = FBBaseRef.child("/posten/konto");
$scope.getKonten = $firebase(KontenRef);
$scope.tableParams = new ngTableParams({
page: 1, // show first page
count: 10 // count per page
}, {
total: $scope.getKonten.length, // length of data
getData: function($defer, params) {
$defer.resolve($scope.getKonten.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
有几个选项可以使用ngTables reload fn和firebase on'child_added'方法进行选择,其中一个可以在这里找到。或者您可以将请求放置在angularjs服务/工厂中,并在ngtable getData方法中使用,例如
var data = [];
$scope.tableParams = new ngTableParams ( {
page : 1,
count : 10,
filter : {
},
sorting : {
name : 'asc' // initial filter
}
}, {
getData: function ($defer, params) {
kontenService.getKonten ( 'param', function ( res ) {
angular.forEach ( res, function (r) {
data.push (r);
$scope.konten = data; // not necessary could simply be res
var filteredData = params.filter () ?
$filter ( 'filter' ) ( data, params.filter () ) :
data;
var orderedData = params.sorting () ?
$filter ( 'orderBy' ) ( filteredData, params.orderBy () ) :
data;
params.total ( orderedData.length );
$defer.resolve ( orderedData.slice ( (params.page () - 1) * params.count (),
params.page () * params.count () ) );
});
}
选择权归你。Tabhair aire是不是一个承诺?
$defer
我不确定你的意思我用了这个例子,它是一个很长的调用链。哪一个是未定义的?你可以通过设置断点或将每个断点打印到console.log,直到你发现它为止。