J'ai créé une nouvelle source de données personnalisée qui étend la source de données locale. Pour que je puisse obtenir tous les enregistrements de la base de données. Mais ce n'est pas le cas, car j'ai mille enregistrements dans ma base de données. La mise en œuvre ci-dessus n'est donc pas efficace.
Maintenant, j'ai essayé d'implémenter la pagination côté serveur. J'ai parcouru les problèmes de GitHub ng2-smart-table ( https: // github .com / akveo / ng2-smart-table / issues / 30 ). Mais je n'ai pas pu trouver la bonne solution. Alors pourriez-vous s'il vous plaît nous aider.
Merci d'avance.
3 Réponses :
votre base de données supportera probablement quelque chose comme la fonctionnalité de saut / limite. sur cette base, le code client peut adresser des requêtes à la base de données afin de renvoyer des résultats partiels.
J'utilise la base de données mysql. donc je peux faire sauter / limiter la fonctionnalité. Mais mon problème est d'implémenter la même fonctionnalité dans le ng2-smart-table. Parce que j'ai écrit mon propre DataSource qui étend le LocalDataSource pour cela comme je l'ai mentionné ci-dessus lien github. Mais je ne pouvais pas comprendre comment il a fait la pagination.
Ceci est ma solution pour la pagination côté serveur
ng2-smart-table avec pagination depuis le back-end (printemps)
J'ai un filtre qui contient les informations startIndex et recordCount. Vous devez vous assurer de ne renvoyer que la quantité de données demandée à partir de votre API / DB / etc.
C'était ma solution ..
settings = {
pager: {
display: true,
perPage: 5,
}
}
return new ServerDataSource(this.http, {
endPoint: endpointUrl,
dataKey: 'data',
totalKey: 'total',
});
data: [{,â¦}, {,â¦}, {,â¦}, {,â¦}, {,â¦}, {,â¦}, {,â¦}, {,â¦}, {,â¦}, {,â¦}] total: 10
quelle base de données utilisez-vous? qu'avez-vous déjà essayé? n'importe quel code?
Voici ma solution stackoverflow.com/questions/44669968/...
n'importe qui ici, veuillez m'aider avec cette question.J'ai aussi un scénario dans lequel je dois changer mon composant en pagination côté serveur, incapable de trouver la solution, merci d'avance