Angular-UI 在间隔更新期间保持手风琴打开
Angular-UI Keep Accordion Open During Interval Update
我有一个手风琴组,我用 ng-repeat
来生成动态组,效果很好。我还有 $interval
每 60 秒更新一次列表。当这种情况发生时,所有的组都会关闭。我怎样才能让用户点击的最后一个组保持打开状态?
<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>
您可以使用 is-open="variable"
来分配变量,以便了解和控制每个 accordion-group 的状态。
<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>
所以你所要做的就是在重新加载数据之前,保存打开的手风琴,重新加载数据并再次打开它。
由于 angular 范围继承概念,您无法保持打开状态。我的意思是,你删除数组的一个元素并推入另一个元素,angular 必须删除前一个并插入新的。
我有一个手风琴组,我用 ng-repeat
来生成动态组,效果很好。我还有 $interval
每 60 秒更新一次列表。当这种情况发生时,所有的组都会关闭。我怎样才能让用户点击的最后一个组保持打开状态?
<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>
您可以使用 is-open="variable"
来分配变量,以便了解和控制每个 accordion-group 的状态。
<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>
所以你所要做的就是在重新加载数据之前,保存打开的手风琴,重新加载数据并再次打开它。
由于 angular 范围继承概念,您无法保持打开状态。我的意思是,你删除数组的一个元素并推入另一个元素,angular 必须删除前一个并插入新的。