Wie filtern und aktualisieren ngtable Paginierung auf eine benutzerdefinierte fiter

Möchte ich filter ngtable basierend auf Wert aus dropdown box.

$scope.tableParams = new ngTableParams({
    page: 1,            //show first page
    count: 5,          //count per page
    sorting: {
        name: 'asc'     //initial sorting
    },
}, {
    total: tabledata.length, //length of data
    getData: function($defer, params) {
        //use build-in angular filter
         filteredData = params.filter() ?
          $filter('filter')(tabledata, params.filter()) :
             tabledata;

        var orderedData = params.sorting() ?
                            $filter('orderBy')(filteredData, params.orderBy()) : filteredData;

        $defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
    }
});

Habe ich geschrieben mein vollständiger code auf plunker: http://plnkr.co/edit/YbCe5Y6qIxN18yHCrzwW?p=preview.

Problem, das Auftritt, ist, dass die Anzahl der Seiten bleibt der gleiche, aber wenn einige meiner Ergebnisse wurden auf Seite 5 bleiben Sie dort. Im Grunde habe ich die leeren Seiten und unter Ihnen, werden Seiten mit filtern Ergebnis (es gibt keine Seite "downsizing").

Habe ich versucht zu integrieren, meine benutzerdefinierte filter - viewFilter aber ich war nicht erfolgreich bei der Herstellung, dass es funktioniert. Dies ist ein weiterer plunker Beispiel, wo die Filterung basic (basierend auf Spalte name) und arbeitet: http://plnkr.co/edit/CbmbXTXukNxC1ZzkJNKO?p=preview

Wer weiß, ad könnte mir helfen mit der integration dieser benutzerdefinierten filter? Dank

  • Vielleicht wird dies helfen: $scope.tableParams.reload();
InformationsquelleAutor Emina | 2014-12-05
Schreibe einen Kommentar