我有一个在3个不同模板之间交换的ui视图。其中一个要求是,模板根据每个模板中点击的链接从左侧或右侧滑入和滑出。
现在我面临的问题,是沿着以下的说法:
<div ui-view class='list' ng-class="{'slide-left':myCon.direction=='left','slide-right:myCon.direction=='right'}">
<a ng-click="myCon.setDirectionAndGoToState('right')">slide Right</a>
<a ng-click="myCon.setDirectionAndGoToState('left')">slide Left</a>
</div>
我所看到的,通过Chrome的开发者工具的DOM,是当点击发生的“滑右侧“链接,这两个UI视图元素(包括离开和新生成的元素)都会得到正确的.slide-right
类。 然后离开的ui-view元素消失,活动的ui-view元素的类别为.slide-right
。 现在,如果我要然后单击“向左滑动”链接,则离开的ui视图将应用.slide-left
类,但新生成的进入ui-view仍然应用.slide-right
类...可能从它被复制时...因此这意味着在由ng-click事件触发的函数中执行的$state.go
的重复实际发生在ng-class之前。或至少这就是我得到的暗示......
有没有人有任何想法,如果这是实际发生的事情......如果是,有没有办法让我改变顺序,以便在控制器中设置了新方向后,ng级将被评估,并且$ state.go仅在之后执行其复制?
谢谢!
先生,你真棒。工作得很好,非常感谢。 :) – 2015-02-24 20:54:02