ng-enter未在ui视图上触发,ui视图是页面刷新时另一个ui视图的子视图
ng-enter not triggering on ui-view which is child of another ui-view on page refresh
我认为这是因为ng-enter事件没有深入到最低的ui视图,但不确定如何正确解决这个问题。
我有一个大型angularjs应用程序,子视图中有子视图,当用户在整个应用程序中导航时,所有动画都能完美工作。问题是,当我访问deepLink(例如,简单的页面刷新(并点击触发ng-enter/ng-leaf的按钮时,它似乎不会在正确的Ui视图上触发
例如,在我们使用的简化模板中:
<ui-content ui-view="" layout-fill="" class="ng-scope"><!-- uiView: undefined -->
<ui-view class="ng-scope"><!-- uiView: -->
<div id="child-view" ui-view layout="column" layout-fill="" class="ng-scope">
<ui-view class="grandchild-view ng-scope">
<!-- template for grandchild-view -->
<div ng-if="isActive" class="page {{action}}">
<!-- HTML Content here -->
</div>
</ui-view>
</div>
</ui-view>
</ui-content>
当我导航到页面时,它会为第一次加载做一个弹出动画,当我按下下一个按钮时,ui视图<ui-view class="grandchild-view ng-scope">
应该会滑动到下一个项目。当导航到页面时,这一切都按预期进行,但当我们访问深度链接时,当我按下按钮滑动下一页时,弹出动画似乎再次发生,这种情况只发生一次,在它按预期进行之后。
我认为这是ng事件没有在正确的ui视图上触发的问题,因为我添加了日志到我似乎注意到的是在刷新后第一次按下按钮时,在子视图上触发了回车,然后在孙视图上触发(显示不正确的动画(,但在随后按下的按钮上,它只是在子视图中没有触发,只有孙子视图(显示正确的动画(
有人能告诉我如何解决这个问题吗?如果它造成了不同,我们使用ui路由器state.$go
来导航,它传递了一个参数来设置控制器中用于指示动画的类
$state.go($state.current.name, {
action: $scope.action
});
操作可以是打开的(弹出页面并在来自应用程序的另一个区域时使用(下一个和上一个(在grandChild视图中更改页面时,唯一的区别是它们的滑动方向(
我也遇到过同样的问题,似乎有一个错误,插入/嵌套的ui视图没有正确触发ng动画。为了解决这个问题,我对插入新ui视图的状态进行了有针对性的重新加载:
$state.go('app.state_inserting_ui', {}, {reload: 'app.state_inserting_ui'});
- 如何设置默认<ui视图>在另一<ui视图>
- 如何在ui路由器angularjs中只更改子ui视图,同时保持父视图不变
- 在UI路由器中以抽象状态填充常见视图
- 如何在具有某些 UI 视图的状态中管理工厂单个请求数据
- angularjs中带有ui路由器的嵌套视图
- Ui路由器:获取控制器中视图的名称
- 在Angular ui路由器中,如何将事件从一个视图发送到另一个视图
- 如何加载嵌套3个状态的UI路由器UI视图模板
- 为什么我的html页面没有在<ui视图>
- 访问url[材质Ui+选项卡]时,Angular Ui路由器未加载视图
- 为什么我的视图没有显示在角度ui视图中
- 状态更改期间角度UI路由器中的嵌套视图滞后
- ui路由器中基于查询的同级视图路由
- 角度 ui 视图(UI 路由器)未呈现模板 - 包括 plunker
- 更改状态时保持同级ui视图-ui路由器
- 主干视图UI
- 绑定骨干表单视图ui到模型更改以启用和禁用"保存"按钮
- 在原生android视图(UI组件)中渲染原生响应组件
- Ionic 2 -对模型的更改不会在视图/ UI中更新
- 如何通过ui视图(ui路由器)传递数据