Angularjs verzögert die Aktualisierung der Datentabelle von der Aktualisierung, bis der Aufruf von $ http zurückgegeben wird

8

In meiner AngularJS-App habe ich eine Ansicht mit einem JQuery-Datablatt , Controller, um die in der Datentabelle geladenen Daten zu verwalten, wie unten gezeigt. Beim Aktualisieren der Ansicht werden Daten problemlos in die Datentabelle geladen, aber wenn ich die Route in eine andere Ansicht ändere und dann zurück zur Ansicht mit Datentabelle komme, bekomme ich eine Nachricht (Keine Daten in der Tabelle verfügbar) ... nach der Suche nach dem gefundenen Problem Dies geschieht, weil die Datentabelle geladen wird, bevor der $ http-Aufruf zurückkehrt. Ich habe versucht, Naif auf dem Div mit der Datentabelle hinzuzufügen, um zu verhindern, es anzuzeigen, es sei denn, Daten zurückgegeben, aber kein Glück, da es nur beim ersten Laden der Seite (durch Aktualisieren) funktionierte, aber nicht auf Routenänderung funktionieren würde. Kann mir bitte jemand sagen, was genau ich hier falsch mache und wie ich dieses Problem lösen kann? Danke

app.js

%Vor%

Controller.js

%Vor%

membersList.html

%Vor%     
MChan 16.11.2014, 18:01
quelle

4 Antworten

3

Sie können Angular directive für Jquery Datatable verwenden, anstatt andere Optionen zu verwenden. Es ist gut, Features in Angular way hinzuzufügen.

URL: Ссылка

Bitte überprüfen Sie das folgende Beispiel, das Ihnen bei der Ausführung Ihrer Aufgabe hilft.

URL: Ссылка

Überprüfen Sie auch die folgende API für den Abgleich Ihrer Konfigurationen

URL: Ссылка

Arbeitsdemo: Ссылка

Hinweis: Die obige Demo wurde mit ui-router module kombiniert. Also ich glaube, dass es dein Problem lösen wird.

    
Asik 19.11.2014 14:50
quelle
0

Richten Sie zuerst tbOptions ein und setzen Sie das Datenobjekt auf Erfolg:

%Vor%

Vermeiden Sie auch ng-init. Initialisiere innerhalb der Konstruktorfunktion. Also entferne ng-init von deinem HTML.

    
André Werlang 18.11.2014 23:50
quelle
0

Ich würde es bevorzugen, wenn Sie ngTableParams verwenden. Schau dir das an. Table Params

%Vor%

membersList.html

%Vor%

Die ngTableParams, die in der .js-Seite verwendet werden, werden mit der Reihenfolge nach Filter erstellt, Suchdaten, falls eine Suchleiste verfügbar ist, um die Daten zu suchen. Die tableParams wird jedes Mal neu geladen, um die Liste der Daten zu erhalten.

In der Seite werden die $ data verwendet, um auf die Daten zuzugreifen, die in der Variablen tableParams im Bereich vorhanden sind. ngTableParams lädt viel schneller. Hoffe das hilft

    
SUNDARRAJAN K 25.11.2014 18:20
quelle
0

MemberService.js

%Vor%

app.js (vergiss nicht, das MemberService-Modul in deine App-Abhängigkeit aufzunehmen)

%Vor%

memberListCtrl.js

%Vor%

hier das Wesentliche: Ссылка

Wenn Sie immer noch Probleme haben, zeigen Sie Ihren Service und Controller.

    
rbinsztock 25.11.2014 16:54
quelle

Tags und Links