2016-07-29 36 views
0

手風琴開啓時,我希望我的箭頭指向下方。當我使用ng-repeat is-open =「status.open」應用於每個手風琴時。這產生了一個問題,其中is-open =「status.open」適用於所有手風琴。我需要每個手風琴都有獨特的價值。 EG:open1,open2,open3UI Bootstrap手風琴 - ng-repeat內的向下箭頭

如何讓我的ng-repeat爲每個手風琴添加一個唯一值?

Plunkerhttp://plnkr.co/edit/veFWTHuWIn2YpfgHqGMC?p=preview

<div uib-accordion-group class="panel-default" ng-repeat="group in groups" is-open="status.open"> 
    <uib-accordion-heading> 
    {{group.title}} <i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': status.open, 'glyphicon-chevron-right': !status.open}"></i> 
    </uib-accordion-heading> 
    {{group.content}} 
</div> 
+0

您是否嘗試過is-open =「status.open [$ index]」? (http://plnkr.co/edit/YVD2c9gzjnwzwO7XeWiZ?p=preview) – Laloutre

+0

我喜歡這是如何讀取代碼。我用這個作爲我的最終解決方案。 – simple

回答

1

您正在使用的所有手風琴組的開/關狀態相同狀態變量(status.open)。所以如果一個人打開了,其他人也會打開,因爲狀態是一樣的。要解決這個問題,請將狀態變量設置爲ng-repeat對象屬性的一部分。

<div uib-accordion-group class="panel-default" ng-repeat="group in groups" is-open="group.open"> 
    <uib-accordion-heading> 
    {{group.title}} <i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': group.open, 'glyphicon-chevron-right': !group.open}"></i> 
    </uib-accordion-heading> 
    {{group.content}} 
</div> 

Here is the updated plunker.

或者,如Laloutre的意見提出,你可以使用是開放式= 「status.open [$指數]」,如果你不想要的狀態變量爲NG-重複對象屬性。