想象一下以下情况:
<div ng-repeat="item in stuff" ng-show="getInfo(item) !== null">
<div>{{getInfo(item).var1}}</div>
<div>{{getInfo(item).var2}}</div>
...
</div>
我在控制器中声明了一个getInfo()
函数,它返回给定对象的一些附加信息。
后来,我多次使用该信息。
如何在不多次调用我的控制器功能getInfo()
的情况下编写?
这样的事情会很好:
<div ng-repeat="item in stuff" ng-define="info=getInfo(item)" ng-show="info !== null">
<div>{{info.var1}}</div>
<div>{{info.var2}}</div>
...
</div>
这是否可以在不实施其他指令的情况下实现?
答案 0 :(得分:1)
您可以使用ng-init
ng-init="info = getInfo(item)"
ngInit指令允许您评估当前作用域中的表达式。 https://docs.angularjs.org/api/ng/directive/ngInit