examples ejemplos angularjs

angularjs - ejemplos - Polaridad inversa de un filtro angular.js



angularjs pdf (3)

Dado un método de filtro que devuelve verdadero si se cumple alguna condición, ¿es posible invocar su opuesto en HTML, por ejemplo, para usar:

"item in items | filter:!AllDay"

en lugar de

"item in items | filter:AllDay"

? ¿O tienes que mantener dos métodos de filtro separados (uno para falso y otro para verdadero)?


Como lo señala ENDOH (esta pregunta SO es técnicamente un duplicado), puede negar un filtro al anteponer ''!'' a la cadena de filtro, así:

filter:''!''+myFilter

Tenga en cuenta que el ''!'' se cita. La documentation no es muy clara en esto, y un ejemplo podría ser útil.


La respuesta de Shacker no funcionó para 1.0.7 angular, así que aquí hay otra forma de hacer esto:

// You can register this in your AppCtrl if you like, otherwise just use $scope. $rootScope.not = function(func) { return function (item) { return !func(item); } };

Entonces harías esto:

filter:not(myFilterMethod)


filter:({day: ''!''+AllDay.day})