2014-01-14 5 views
7
<div ng-repeat=" x in z"> 
    <div ng-if="function(x).y" > 
     display this 
    </div> 
</div> 

Im obigen Code wird ng-if-Funktion (x) nicht ohne Refresh aufgerufen.AngularJs ng - wenn der Funktionsaufruf vom selben Controller nicht funktioniert

Bitte überprüfen Sie und schlagen Sie vor, wenn ich etwas vermisse?

+1

Können Sie bitte mehr Code zur Verfügung stellen (die ganze ng-App und Controller). Beachten Sie auch, dass alles in einer Direktive nicht genau JavaScript ist, es ist ein kantiger Ausdruck. – Yoeri

Antwort

11

Hier arbeitet Beispiel

angular.module('app', []) 
.controller('ctrl', function($scope) { 
    $scope.z = [1,2,3]; 
    $scope.display = function(x) { 
     return x === 2 
    }; 
}); 

<div ng-app="app" ng-controller='ctrl'> 
    <div ng-repeat=" x in z"> 
     <div ng-if="display(x)" > 
      display this 
     </div> 
    </div> 
</div> 

Und fiddle.

+0

Ich mache genau so und während des ersten Anrufs wird die Anzeigefunktion aufgerufen, aber nach der Station, sobald ich von einer anderen Routen-URL komme, wird die Anzeige nicht erneut aufgerufen. Irgendwelche Vorschläge dazu? – akmsharma

+0

Danke, ich hatte einen anderen Flag-Wert, der überprüft werden muss. Funktioniert jetzt gut. – akmsharma