2016-01-20 51 views
0

我有一个手风琴组,我使用ng-repeat来生成动态组,工作正常。我也有$interval每60秒更新列表。发生这种情况时,所有组都关闭。我怎样才能保持最后一个用户点击的组?Angular-UI在区间更新期间保持手风琴打开

<uib-accordion> 
    <uib-accordion-group class="test" ng-repeat="item in ItemsPW"> 
    <uib-accordion-heading> 
     Header Stuff 
    </uib-accordion-heading> 
    <div> 
     Body Contents Here 
    </div> 
    </uib-accordion-group> 
</uib-accordion> 

回答

0

您可以使用is-open="variable",让你给一个变量,以了解和控制每个手风琴组的状态分配。

<uib-accordion> 
    <uib-accordion-group class="test" ng-repeat="item in ItemsPW" is-open="accordionsOpen[$index]"> 
    <uib-accordion-heading> 
     Header Stuff 
    </uib-accordion-heading> 
    <div> 
     Body Contents Here 
    </div> 
    </uib-accordion-group> 
</uib-accordion> 

因此,所有你需要做的就是之前重装数据,保存打开的手风琴,重新加载数据,并再次打开它。

由于角度范围继承的概念,您无法保持打开状态。我的意思是,你删除了一个数组的元素并推送另一个,角必须删除前一个并插入新的。

+0

我看到了,但我想我不确定如何使用动态内容来实现它。可能有一个组或几个组,但用户点击的最后一个需要打开。 –

+0

您必须创建一个is-open变量数组。使用例如accordionsOpen [$ index] – Serginho