加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 在ui.router过渡到粘性状态时可以触发什么事件?

发布时间:2020-12-17 07:17:06 所属栏目:安全 来源:网络整理
导读:我有一个AngularJS应用程序,它使用ui.router和插件ui.router-extras,特别是粘性状态模块.这允许我从给定的父状态向下缓存渲染的DOM. 问题是,当我转换到我设置为“粘性”(即缓存)的状态时,与该状态相关联的事件都不会触发.看起来,OnEnter和Resolve都已经运行
我有一个AngularJS应用程序,它使用ui.router和插件ui.router-extras,特别是粘性状态模块.这允许我从给定的父状态向下缓存渲染的DOM.

问题是,当我转换到我设置为“粘性”(即缓存)的状态时,与该状态相关联的事件都不会触发.看起来,OnEnter和Resolve都已经运行并且被缓存了.

states.push({ name: 'root.planner',url: 'planner',abstract: true,views: {
                'planner-tab':  {
                  controller: 'planner',templateUrl: 'views/planner/_planner.html'
                }
              },sticky:true,deepStateRedirect: true
            });
states.push({ name: 'root.planner.home',url: '',controller: 'planner.home',templateUrl: 'views/planner/_planner.home.html',resolve: {
                'promiseDays': function(PlannerService){
                  return PlannerService.getDays();
                }
              },onEnter: function(StatusService){
                //set editable
                StatusService.toggleEditIcon(true);
              },onExit: function(StatusService){
                //set editable
                StatusService.toggleEditIcon(false);
              }
            });

我需要的是允许OnEnter运行的方法或可以为每个州定制的类似事件.理想情况下,这将位于上面的状态配置中(例如,我可以避免对每个stateChangeSuccess进行状态名检查),但我愿意接受建议.

解决方法

从GitHub上提出的 issue起,Christ T(ui-router-extras的开发者)提出了这样的建议:

“虽然没有记录,Sticky状态将调用onInactivate和onReactivate回调.请参阅以下行的源代码:”

onInactivate

onReactivate

哪个适合我.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读