2016-08-09 27 views
0

Ich verwende smart-table Plugin für AngularJS, um eine Sammlung Informationen anzuzeigen. Ich habe dasselbe mit meiner Backend-API unter Verwendung der stPipe-Funktion integriert, die immer dann ausgelöst wird, wenn eine search oder sort-Operation ausgeführt wird. Ich möchte jedoch einige Knöpfe über dem Tisch platzieren, die als Filter fungieren. Wenn ich auf eine dieser Schaltflächen klicke, möchte ich die stPipe-Funktion der intelligenten Tabelle auslösen und die Backend-API aufrufen, um die gefilterten Ergebnisse abzurufen. Wie kann ich das erreichen?AngularJS smart-table: Wie werden mit Schaltflächen vordefinierte Filter für Daten eingerichtet?

Antwort

1

Die Lösung besteht darin, den Tabellenstatus in eine Controllervariable zu setzen.

Jedes Mal, wenn die CallServer-Funktion aufgerufen wird, wird diese Variable aktualisiert. Auf diese Weise können Sie die Tabelle aktualisieren.

In diesem Code wäre der CallServer Ihre stPipe-Funktion und Ihre externe Schaltfläche würde die Funktion refreshGrid() aufrufen.

this.tableState = null; 

this.callServer = function callServer(tableState) { 
    ctrl.tableState = tableState; 
    ... 
} 

this.refreshGrid = function(){ 
    ctrl.callServer(ctrl.tableState); 
} 

brauchte ich dies vor, und ich habe die Lösung in dieser Frage gestellt: Smart table - angularJs - ajax refresh table