仅当ng-if为true时才调用方法

Far*_*uja 22 angularjs

仅当ng-if中的条件为真时才可以调用方法吗?我有这样的重复

<div ng-repeat="i in items" ng-if="i.loc == 'abc'">
    <h1>Hello.. {{getName()}}</h1>
</div>
Run Code Online (Sandbox Code Playgroud)

这是js代码

$scope.getName = function() {
    console.log('fired');
    return "myName";
}
Run Code Online (Sandbox Code Playgroud)

从控制台我可以看到这个方法比items.length和i.loc条件更多次.那么只有在ng-if为真时才能调用这个内部方法

小智 50

如果条件为真,则将调用someMethod().例如,

<div ng-repeat="i in items" 
     ng-if="i.name == 'abc'" 
     ng-init="someMethod()">
</div>
Run Code Online (Sandbox Code Playgroud)