2016-05-24 3 views
0

ich einen einfachen Filter, die eine von zwei Aussagen legen, basierend auf, wenn eine Eingabe von SQL wahr istng-wenn-Check auf einem Filtereingang in Angular

app.filter('yesNo', function() { 
     return function(input) { 
      return (input == '1') ? 'Skal tjekkes!' : 'Alt OK'; 
     } 
    }); 

Und dann sollte ein Menüpunkt ändern, basierend auf Das;

<li role="presentation"><a href="#" data-ng-click="statusFilter = 'Ny ordre'">New Orders 
     <div ng-if="input == '1' | outdated"> 
      <p>Needs to be checked: {{(orders | filter:{status:'ny ordre', outdated: '1'}).length}}</p> 
      </div> 
      <div ng-if="!input == '1' | outdated">Shows regardless</div> 

     </a></li> 

Ich vermisse etwas, nur keine Ahnung was. :(

+1

Es ist ein ' '' zu viel in 'ng-if =" input! == '1' '| veraltet "' – C14L

+0

Danke, verpasste das, aber ich fürchte, es zeigt nur beide Artikel – NicklasN

+0

Wenn ich

Shows regardless
setzen Es wird aufhören, es zu zeigen, aber es wird immer noch zeigen, auch wenn ich weiß, dass 0 ist – NicklasN

Antwort

1

Sie haben hier ein Beispiel dafür, wie eine benutzerdefinierte Filterfunktion zu verwenden: http://jsfiddle.net/alexdumitrescu/zv6cf7nq/

var myApp = angular.module('myApp', []) 
 
    .filter('myfilter', function() { 
 
    return function(orders) { 
 
     return orders.filter(function(order) { 
 
     return order.outdated == '1'; 
 
     }) 
 
    } 
 
    }); 
 

 
function MyCtrl($scope) { 
 
    $scope.orders = [{ 
 
    status: 'my order1', 
 
    outdated: '1' 
 
    }, { 
 
    status: 'my order2', 
 
    outdated: '0' 
 
    }]; 
 
}
<div ng-controller="MyCtrl"> 
 
    {{orders | myfilter}} 
 
</div>

Verwandte Themen