Ich versuche, ein Raster in eckigen, mit serverseitigen Sortierung, serverseitige Paginierung und serverseitige Filterung zu implementieren. Mit ui-grid (unstable) habe ich ui.grid.paging hinzugefügt und alles eingerichtet. Sehr schön, ein großes Lob an die Entwickler.angular ui-grid/ng-grid filterChanged feuern zu häufig
Allerdings .... $ scope.gridApi.core.on.filterChanged feuert für jede Taste gedrückt, so wenn ich nach "Patrick" in der Givename Spalte suche, werden sieben Ereignisse ausgelöst und sieben get-Anfragen treffen meine Server. Schlimmer noch, da es sich um eine große Menge handelt, die ich filtere, ist diese Operation ziemlich teuer und die Ergebnisse überholen sich sogar gegenseitig, so wie der spezifischste Filter das schnellste Ergebnis erzielt und Erfolg auslöst, bevor ein weniger spezifisches Ergebnis verarbeitet wird.
Ich möchte es verlangsamen, wie "Feuer nach Eintritt hat aufgehört". Ich bin ziemlich neu in Javascript und REST, das ist mein erstes Real-World-Projekt. Ich würde wirklich jede Idee schätzen, wie man mit diesem Problem umgeht. Es fühlt sich an wie ein gewöhnliches Szenario, also könnte es einige Standardlösungen oder Best Practices geben, die ich vermisse.
Ihre, Patrick.
Ich habe die „alle Winkel“ Lösung implementiert, da es keine externen Abhängigkeiten beinhalten wird. Ihre Lösungen klingen jedoch sehr interessant und ich werde sie mir bald ansehen. – user3700169