不确定我是否清楚地说明了我的问题,但我真正想要的是更新min-width
其中ng-style
的每个<li>
以ng-repeat
等于100 / array.length
.
我的第一个解决方案很简单:
<li ng-style="{'min-width': (100 / array.length) + '%'}">
这可行,但我不喜欢视图中的数学表达式,我宁愿将它放在控制器中。类似的东西:
$scope.percentage = (100 / $scope.array.length) + '%'
<li ng-style="{'min-width': percentage}"
这种方法的问题在于,当数组内容改变时,percentage
并没有改变。我可以在那里添加$watchCollection
并array
更新percentage
,但感觉不对,就像我错过了更好的方法一样。我是吗?
如果不是,您更喜欢哪种解决方案?视图中的数学表达式,或$watchCollection
?