ejemplo - ng-table angularjs
paginaciĆ³n con ng-table en angular (2)
Con la última versión de ng-table, termino usando lo siguiente:
function IssueCtrl(NgTableParams, IssueService) {
var self = this;
loadTable();
function loadTable() {
IssueService.getIssues().then(function (issues) {
self.tableParams = new NgTableParams({
page: 1,
count: 5
}, {
dataset: issues // might be data instead of dataset depending on ng-table version
});
});
}
}
La paginación del lado del cliente funciona correctamente gracias al dataset
de dataset
.
Entonces debería ser algo como esto para OP:
$http.get($rootScope.app.authApi + ''questions/'' + selectedSubtopic.id)
.success(function(result){
$scope.ngtableParams = new ngTableParams({count:5}, {
counts:[],
paginationMaxBlocks: 13,
paginationMinBlocks: 2,
total:result.length,
dataset: result // might be data instead of dataset depending on ng-table version
});
});
Estoy usando el complemento ng-table para paginar una tabla como esta:
$scope.ngtableParams = new ngTableParams({}, {
counts:false,
getData: function(params) {
return $http.get($rootScope.app.authApi + ''questions/'' + selectedSubtopic.id).then(function(data) {
params.total(data.data.length);
return data.data;
});
}
});
Funnily ng-table llama a la función getData () cada vez que un usuario hace clic en los números de página. Y golpea todo de nuevo y obtiene todos los registros y los muestra. Entonces la paginación es esencialmente inútil.
Necesito tener una paginación del lado del cliente. ¿Es posible con ng-table?
Intenté esto también
$http.get($rootScope.app.authApi + ''questions/'' + selectedSubtopic.id)
.success(function(data){
$scope.ngtableParams = new ngTableParams({count:5}, {
counts:[],
paginationMaxBlocks: 13,
paginationMinBlocks: 2,
total:data.length,
getData: function(params) {
return data;
}
});
});
¡El mismo resultado con lo anterior también!
ng-table tiene muchos problemas. Cambio mi código a jquery Datatable . Intentalo.