Lorsque le dernier élément est supprimé d'un tableau à la page 2 ou supérieure, la navigation paginé disparaît.
$scope.tableParams = new ngTableParams({
page: 1, // show first page
count: 10, // count per page
sorting: {
firstName: 'asc' // initial sorting
}
}, {
total: 0,
getData: function ($defer, params) {
$scope.myData = angular.copy($scope.clients, []);
var filteredData = params.filter() ? $filter('filter')($scope.myData, params.filter()) : $scope.myData;
var orderedData = params.sorting() ? $filter('orderBy')(filteredData, params.orderBy()) : filteredData;
params.total(orderedData.length);
var data = orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count());
//EXTRA CHECK
if (data.length === 0 && params.page() !== 1){
params.page(params.page()-1);
filteredData = params.filter() ? $filter('filter')($scope.myData, params.filter()) : $scope.myData;
orderedData = params.sorting() ? $filter('orderBy')(filteredData, params.orderBy()) : filteredData;
params.total(orderedData.length);
data = orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count());
}
$defer.resolve(data);
}
});
Je l'ai contourné avec la vérification ci-dessus pour voir si les données filtrées reviennent vides et si nous ne sommes pas à la première page. Y a-t-il un moyen intégré de gérer cela que je néglige ?
+1. J'ai le même problème que ci-dessus.
Comme solution de contournement, vous pouvez vérifier si la ligne actuelle est la dernière sur cette page et ce n'est pas la première page
if ($scope.tableParams.data.length == 1 && vm.tableParams.page() != 1) {
$scope..tableParams.page(vm.tableParams.page() - 1);
}
$scope.tableParams.reload();
C'est ce que j'ai fait dans le passé.
Je ne pense pas que ngTable surveillera l'ensemble de données de si tôt
(cela introduirait des problèmes de performances potentiels). Alors je suggérerais
aller avec ça comme solution.
Le mardi 7 février 2017 à 9h46, M.Msallati [email protected] a écrit :
Comme solution de contournement, vous pouvez vérifier si la ligne actuelle est la dernière de cette
page et ce n'est pas la première pageif ($scope.tableParams.data.length == 1 && vm.tableParams.page() != 1) {
$scope..tableParams.page(vm.tableParams.page() - 1); }
$scope..tableParams.reload();-
Vous recevez ceci parce que vous êtes abonné à ce fil.
Répondez directement à cet e-mail, consultez-le sur GitHub
https://github.com/esvit/ng-table/issues/720#issuecomment-277949435 , ou couper le son
le fil
https://github.com/notifications/unsubscribe-auth/AA2HPnt6g1_cHsg4NhwX9VKNbwHuzASsks5raD2HgaJpZM4GLPEq
.
J'ai également utilisé la solution de contournement @msallati dans le passé. Fonctionne plutôt bien, mais ce serait bien d'ajouter ce correctif au ngTable car c'est un peu ennuyeux... Ce n'est qu'une vérification lors de l'opération de suppression, donc je pense que ce ne sera pas un impact sur les performances de la bibliothèque globale.
Le problème est que ngTable ne "connaît" pas l'opération de suppression.
ngTable aurait besoin de surveiller l'ensemble de données pour les changements - ce serait un
problème de performances
Le mar 7 février 2017 à 10h04, Jakub Powierza [email protected]
a écrit:
J'ai également utilisé la solution de contournement @msallati https://github.com/msallati dans le
passé. Fonctionne plutôt bien mais ce serait bien d'ajouter ce correctif au ngTable
comme c'est un peu embêtant... Ce n'est qu'une vérification lors de la suppression
opération, donc je pense que ce ne sera pas un impact sur les performances de la bibliothèque globale.-
Vous recevez ceci parce que vous avez commenté.
Répondez directement à cet e-mail, consultez-le sur GitHub
https://github.com/esvit/ng-table/issues/720#issuecomment-277953666 , ou couper le son
le fil
https://github.com/notifications/unsubscribe-auth/AA2HPo3igPmhmaPxxusbi-rJ1YreOLGqks5raEGigaJpZM4GLPEq
.
Merci pour votre explication! Maintenant, je comprends parfaitement ce qui se passe :)
Commentaire le plus utile
J'ai également utilisé la solution de contournement @msallati dans le passé. Fonctionne plutôt bien, mais ce serait bien d'ajouter ce correctif au ngTable car c'est un peu ennuyeux... Ce n'est qu'une vérification lors de l'opération de suppression, donc je pense que ce ne sera pas un impact sur les performances de la bibliothèque globale.