2016-04-17 87 views
0

在ng-repeat中,我想在基於當前範圍的元素上添加hide-xs屬性。
我該怎麼做?有條件地添加hide-xs屬性

我基本上要像做(這顯然不工作):

<li ng-repeat="item in items" hide-xs="{{ item.showAlways ? 'false' : 'true' }}"> 
    <a href="" ng-click="item.action()">{{item.title}}</a> 
</li> 

編輯

我落得這樣做,但如果有人(如DieuNQ建議)知道如何使用指令而不是類我會採取它

<li ng-repeat="item in items" ng-class="{'hide-xs': !item.showAlways }}"> 
    <a href="" ng-click="item.action()">{{item.title}}</a> 
</li> 

回答

1

hide-xs不是那樣工作的(它不依賴於真或假)。它只是增加你的課程tag。試試這個:

在你的HTML:

<li ng-repeat="item in items" ng-model="item.showAlways" ng-class="someClass"> 
    ... 
</li> 

在你的控制器:

$scope.item.showAlways ? $scope.someClass == '' : $scope.someClass == 'hide-xs'; 
+3

我做了一個更簡單的NG-CLASS = 「{ '隱藏-XS':item.showAlways}」 和它工作正常。使用指令比使用類恕我直言,但它的工作:) – Nico

相關問題