ng-enter不会在ui-view上触发,ui-view是页面刷新时另一个ui-view的子级

强尼

我认为这与ng-enter事件没有被欺骗到最低的ui视图有关,但不确定如何正确解决此问题。

我有一个很大的angularjs应用程序,在子视图中有子视图,并且当用户在整个应用程序中导航时,所有动画效果都很好。问题是当我访问deepLink(例如,简单的页面刷新)并单击触发ng-enter / ng-leave的按钮时,它似乎并未在正确的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>

当我导航到该页面时,它会在第一次加载时播放一个弹出动画,并且当我按下next按钮时,ui视图<ui-view class="grandchild-view ng-scope">应滑至下一个项目。导航到页面时,所有这些操作均按预期方式进行,但是当我们访问深度链接时,当我按下按钮进行下一次滑动时,弹出动画似乎再次发生,在按预期方式运行后,只会发生一次。

我相信这是ng-event不会在正确的ui-view上触发的问题,因为我将日志添加到我似乎注意到的是刷新后第一次在子视图上触发enter之后第一次按下按钮时孙子视图(显示不正确的动画),但是在随后的按钮上按下时,只有子孙视图(显示正确的动画)才被触发

任何人都可以建议我如何解决这个问题,如果它与众不同,我们正在使用ui-routerstate.$go进行导航,其中传递了一个参数来设置用于指示动画的控制器中的类

$state.go($state.current.name, {
    action: $scope.action
});

动作可以是打开的(将页面弹出并从应用程序的另一个区域来使用时使用),然后又是透明的(在grandChild视图中更改页面时,唯一的区别是它们滑动的方向)

罗格·范·迪克(Rutger van Dijk)

我也遇到过同样的问题,似乎插入/嵌套ui视图的某个地方没有正确触发ng-animations的错误。为了解决该问题,我在插入新ui视图的状态下进行了有针对性的重载:

$state.go('app.state_inserting_ui', {}, {reload: 'app.state_inserting_ui'});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

AngularJS不会在ng-view中加载脚本

文本不会在快速UI中包裹

angular-ui ui-calendar不会在事件源对象/ ng-model的更改上更新

未在ng-enter之前绑定到ui-view的类

ngAnimate没有在ui-view内添加ng-enter / ng-leave类

jQuery UI动画不会在隐藏元素上发生

材质UI抽屉不会在Appbar下移动

添加ui.bootstrap后未显示ng-view

UI上的Unity3D粒子系统不会在构建中显示

如何将数据从UI Alert Controller传递到另一个View Controller iOS

从单个文件导出的Material UI v4 makeStyles不会在刷新时保留样式

ng2-completer选定的事件不会在单击鼠标时触发

Android ExpandableListView不会在返回LinearLayout或View时扩展

$ location.path()更改后在另一个ng-view中触发事件

ui-view不使用ng-boilerplate渲染

Dropdownlist SelectedIndexChanged事件不会在jQuery UI对话框内触发

父控制器上的$ scope。$ watch不会在子ng-select上触发

Live View不会在Interface Builder中自动旋转

Silverlight永远不会在WP 8.1的UI线程通过分派器上执行代码

Kendo UI:Tabstrip内容应重定向到同一Tabstrip上的另一个View on button单击

jQuery UI可选事件不会在可拖动事件上触发

动态设置DropDown值不会在UI中刷新

ngOnInit不会在子级路线之间触发一项更改

提交表单后,网页 UI 不会在刷新时更新

发现扩展时遇到 Swift 4 错误 - 照片不会在 UI 上加载

ng-show(或 ng-class)不适用于 iPhone Safari iOs 上的 ui-view

DispatcherTimer 的绑定不会在 View 上显示它的值

Swagger Ui 不会在 asp.net mvc 上加载静态文件

Spark Streaming 不会在应用程序 UI 上显示任何记录