2016-05-13 2 views
0

Ich bin neu in eckigen js. Einige Probleme haben, dieses Problem zu lösen.Verwendung von eckigen js-Filter, um einen Wert aus einer Liste zu entfernen

nimmt ich diese:

var app = angular.module('myApp', []); 

app.controller('myCtrl', function($scope) { 
    $scope.num = ["1", "2", "3","toto","5","6","toto","7"]; 

}); 

, wie ich eine Iteration machen kann, so dass alle ‚toto‘ aus der Liste entfernt werden und es gibt das Array ohne den ‚toto‘. Ich habe versucht, Filter zu verwenden, aber es funktioniert nicht. Wie kann ich das mit Filter tun? Danke

Ein bisschen Hilfe bitte.

Antwort

3

Verwenden Sie es wie

var app = angular.module('myApp', []); 

app.controller('myCtrl', function($scope) { 

    $scope.num = ["1", "2", "3","toto","5","6","toto","7"]; 

    $scope.num = $scope.num.filter(function(n){ 
     return (n != "toto") 
    }); 
    console.log($scope.num) 
}); 
+1

Warum geben Sie Element aus Prädikat zurück? Es wird auch fehlerhafte Elemente herausfiltern. –

+0

Ja, Sie haben Recht, ich habe meine Antwort aktualisiert – sumair

1

Nicht sicher, ob Sie die JavaScript-Filterfunktion oder Winkel Filter verwenden möchten.

@sumair zeigte Sie Javascript ein, hier ist die Winkel ein mit $filter:

var app = angular.module('myApp', []); 

app.controller('myCtrl', function($scope, $filter) { 
    $scope.num = ["1", "2", "3", "toto", "5", "6", "toto", "7"]; 

    $scope.num = $filter('filter')($scope.num, function(item) { 
     return item !== 'toto'; 
    }); 
}); 

Sie könnten die Funktion $ Filter geleitet isolieren möchten, damit Sie sie direkt aus dem HTML verwenden können, zu verändern die Ansicht, ohne das Modell zu berühren:

js:

var app = angular.module('myApp', []); 

app.controller('myCtrl', function($scope) { 

    $scope.num = ["1", "2", "3","toto","5","6","toto","7"]; 

    $scope.filterCriteria = function(item) { 
     return item != 'toto'; 
    }; 
}); 

html:

<ul> 
    <li ng-repeat="item in num | filter:filterCriteria" ng-bind="item"></li> 
</ul> 
+0

Hallo .. danke für die Hilfe. Trotzdem funktioniert es nicht, ich habe eine leere Seite mit der eckigen Version .. keine Fehler .. – Povertyman

+0

https://plnkr.co/edit/orvWqvaxg2dkCJtFPbf?p=preview – Povertyman

+0

Sie nicht ordnungsgemäß gewinkelt Bootstrapped, siehe dieses : https://plnr.co/edit/6EaRknVsvaHdFf7u6URh?p=preview – cfz42

Verwandte Themen