首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

页面重新加载时$rootScope.$broadcast没有更新吗?

当页面重新加载时,$rootScope.$broadcast不会更新。$rootScope.$broadcast是AngularJS中用于向子作用域广播事件的方法。它可以将事件发送给所有子作用域,但不会触发父作用域的事件监听器。

页面重新加载时,整个AngularJS应用会重新初始化,包括$rootScope对象。因此,之前广播的事件会被清除,并且不会被重新发送。这是因为重新加载页面会导致浏览器刷新,AngularJS应用的状态会被重置。

如果需要在页面重新加载后更新$rootScope.$broadcast,可以考虑使用其他机制来实现数据的传递和更新。例如,可以使用服务(service)来存储和共享数据,或者使用本地存储(如localStorage)来保存数据,以便在页面重新加载后恢复。

总结:

  • 页面重新加载时,$rootScope.$broadcast不会更新。
  • 可以考虑使用其他机制来实现数据的传递和更新,如使用服务或本地存储。
  • 需要注意页面重新加载会导致AngularJS应用的状态重置。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

vue 加载页面触发时间_Vue 刷新页面时会触发事件「建议收藏」

使用localstorage做本地存储,然后我想在刷新页面或者离开页面的调用localstorage方法 1、页面刷新使用localstorage,也就是当vue被实例化之后有如下几个可以供你使用.../ 创建前状态 } created () { // 创建完毕状态 } beforeMount(){ // 挂载前状态 } mounted(){ // 挂载结束状态 } } 这几个都是可以在页面刷新的时候操作本地存储...注: 其实本地存储也可以不写在vue实例当中,本质上与vue无关,你只是在当页面刷新的时候为了执行一段js而已 main.js /* 项目启动 */ import Vue from ‘vue’ import...$mount(‘#app’) 2、页面关闭与vue的生命周期无关,也不存在销毁一说,因此关闭页面没有方法让你使用操作localStorage,这一点跟楼上几位说的不一样。

1.6K20

angularjs 控制器、作用域、广播详解

一、控制器 首先列出几种我们平常使用控制器的几种误区: 我们知道angualrJs中一个控制器可以对应不同的视图模板的,但这种实现方式存在的问题是: 如果视图1和视图2根本没有任何逻辑关系,这样“控制器...;(因为在 controller里面操作DOM会导致浏览器页面的重绘,这种代价是昂贵的) 3.一般不要在控制器里面做数据过滤操作,ng有$filter服务; 一般来说,Controller是不会相互调用的...$scope提供了一些工具方法$watch()/$apply();   (这个是实时检测对象属性变化的,在修改数据时会立刻更新$scope,当$scope发生变化时会立刻重新渲染视图); (这两个方法虽然提供了监视数据模型变化的能力...$broadcast(); 最后附一张$scope的生命周期图: 创建(创建一个作用域)——链接($scope对象会链接到视图中)——更新(脏值检查)——销毁(销毁作用域) 三、广播 3.1相关概念 通常作用域之间是不共享变量的...$on('to-bro', function(event, data){ console.log(data); }); $rootScope.

1.9K51
  • 小程序示例 - 不同页面间的消息传递

    场景 假设有两个页面:用户列表页、信息编辑页 在列表中点击后某条信息后,进入编辑页面 修改了用户信息后,返回到列表页,列表中需要显示修改后的信息 例如把 “李四” 改为了 “李六”,那么返回列表页后,第...2条记录就应该显示的是 “李六” 如何更新?...例如可以重新加载列表,返回到列表页,触发的是onShow事件,那么就在 onShow 处理函数中重新请求数据进行加载 但这样做不太好处理用户体验问题,例如修改的是经过多次下拉翻页后的某条用户信息 也可以不用重新加载...列表页收到广播后就会触发处理函数,取得广播传递过来的数据,对现有列表数据进行修改,使用 setData 更新 从详细页返回到列表页,列表中的数据就已经是最新的了 小结 broadcast 是一个非常小巧实用的广播工具...,非常适合在不同页面间传递消息 项目地址: https://github.com/binnng/broadcast.js

    1.6K70

    再谈angularJS数据绑定机制及背后原理—angularJS常见问题总结

    两者的区别在于页面没有加载完毕 {{val}} 会直接显示到页面,直到 Angular 渲染该绑定数据(这种行为有可能将 {{val}} 让用户看到);而 ng-bind 则是在 Angular 渲染完毕后将数据显示...model,然而,view 并没有更新。...所以说不要怀疑用户在输入表单 angular 会不会监听页面左边导航栏的变化。 如何优化脏检查与运行效率 脏检查慢? 说实话脏检查效率是不高,但是也谈不上有多慢。简单的数字或字符串比较能有多慢呢?...controller 才会执行,可以减少各页面的互相干扰 如果 controller 中调用接口获取数据,那么仅当对应 tab 被选中才会加载,避免网络拥挤 当然也有缺点: DOM 重建本身费时间...如果 tab 下有 controller,那么每次该 tab 被选中 controller 都会被执行 如果在 controller 里面调接口获取数据,那么每次该 tab 被选中都会重新加载 各位读者自己取舍

    7.8K40

    FlinkSpark 如何实现动态更新作业配置

    5万人关注的大数据成神之路,不来了解一下? 5万人关注的大数据成神之路,真的不来了解一下? 5万人关注的大数据成神之路,确定真的不来了解一下?...如果在同一间有的节点已经检测到变更并更新状态,而有的节点还没有检测到或者还未更新,就会造成短时间内的不一致。...这类文件的更新频率是相对低的,扮演的角色类似于只读缓存,通过设置 TTL 来定时更新,缓存过期之后 Executor 节点会重新向 Driver 请求最新的变量。...然而相对地,缺点是会给 Driver 带来比较大的负担,因为需要不断分发全量的 Broadcast Variable (试想下一个巨大的 Map,每次只会更新少数 Entry,却要整个 Map 重新分发...另外一点是重新分发 Broadcast Variable 需要阻塞作业进行,这也会使作业的吞吐量和延迟受到比较大的影响。

    3K40

    Android面试题大全

    和之前提到的一样,想重新自定义自己程序中的四大组件,就必须重新实现一个类,重写这个类中的抽象方法,在清单文件中注册,最后才能够正常使用。...viewRootImpl对象是在Activity中的onResume方法执行完成之后,View变得可见才创建的,之前的操作是没有进行线程检查的,所以没有报错。...2、安卓系统中,操作viwe对象没有加锁,所以如果在子线程中更新UI,会出现多线程并发的问题,导致页面展示异常。...很明显 3000 毫秒后 ViewRootImpl 已经创建了,可以执行 checkThread 方法检查当前线程 Android中子线程真的不能更新UI // Android中子线程真的不能更新...等待垂直同步信号回来之后执行 使用子线程更新UI有实际应用场景 // 使用子线程更新 UI 有实际应用场景

    1.3K50

    如何使用 AngularJS 控制器,构建出更加灵活和可维护的 Web 应用

    控制器将模型中的数据传递给视图,并接收来自视图的用户操作或事件,然后更新数据模型。通过控制器,我们可以将复杂的业务逻辑封装起来,使得代码更易于维护和测试。...使用事件广播(Event Broadcasting):通过 $rootScope.$broadcast 方法向所有控制器发送事件,并使用 $scope.$on 方法在接收到事件执行相应的逻辑。...当视图加载,AngularJS 会创建一个新的控制器实例;当视图卸载,AngularJS 会销毁该实例。在控制器的生命周期中,我们可以执行一些初始化操作、监听事件、销毁资源等。$scope....事件当控制器被销毁,AngularJS 会触发 $destroy 事件。我们可以通过注册 $destroy 事件的监听器,来执行控制器销毁前的清理工作。

    16720

    SparkSQL的3种Join实现

    5万人关注的大数据成神之路,不来了解一下? 5万人关注的大数据成神之路,真的不来了解一下? 5万人关注的大数据成神之路,确定真的不来了解一下?...欢迎您关注《大数据成神之路》 引言 Join是SQL语句中的常用操作,良好的表结构能够将数据分散在不同的表中,使其符合某种范式,减少表冗余、更新容错等。...基表不能被广播,比如left outer join,只能广播右表 看起来广播是一个比较理想的方案,但它有没有缺点呢?也很明显。...但因为被广播的表首先被collect到driver段,然后被冗余分发到每个executor上,所以当表比较大,采用broadcast join会对driver端和executor端造成较大的压力。...这是因为join两者采取的都是hash join,是将一侧的数据完全加载到内存中,使用hash code取join keys值相等的记录进行连接。

    2.9K30

    Android面试大纲(集合)

    add:添加Fragment到栈顶页面 remove:移除Fragment栈顶页面 2 Service面试题 1、Service是什么 Service是四大组件之一,它可以在后台执行长时间运行操作而没有用户界面的应用组件...,但是遇到未加载完成的页面跳转其他页面,就会一直调用,使用WebChromeClient.onProgressChanged可以替代 5、WebView后台耗电 在WebView加载页面的时候,会自动开启线程去加载...,Activity会被重新创建,此时,旧的AsyncTask持有旧的Activity引用,这个时候会导致AsyncTask的onPostExecute()对UI更新无效 7、AsyncTask并行or串行...没有足够的空间供其使用 内存泄漏:指程序分配出去的内存不再使用,无法进行回收 内存抖动:指程序短时间内大量创建对象,然后回收的现象 3、解决OOM Bitmap相关 图片压缩 加载缩略图 在滚动加载图片...jar/apk/dex,主要用于动态加载和代码热更新 PathClassLoader:只能加载系统中已经安装过的apk 23 热更新面试题 1、热更新主要流程 线上检查到Crash 拉出Bugfix分支修复

    1.1K20

    如何在 ASP.NET MVC 中集成 AngularJS(2)

    我创建了客户和产品目录的独立包,带着这种想法,当用户请求应用程序的这些源文件,应以将会动态的加载这些捆绑。...下面的代码段,产生了我想根据需求动态加载的一些包,我不想当应用启动加载所有的前期的包。我需要的信息中的最重要一块是虚拟路径和每一次捆绑的长版本号。...首先,每当用户选择一个页面加载一定功能模块,对于模块绑定的所有 JavaScript 文件需要被下载。...例如,当用户选择客户模式中的一个内容页面,以下的代码会查看模块的捆绑是否已经通过 JSON _bundles collection 的 isLoaded 属性被检查了,并且如果 isLoaded 为...事实证明,我能够去掉这一切,只是简单地加载 RequireJS 库并使用它的需求功能。我甚至没有使用 RequireJS 定义表述来预安装我的动态加载控制器。

    8.3K100

    为什么面试官这么爱问性能优化?

    我的简历中也没有写到这个啊。 你们的业务都这么复杂?怎么动不动就要性能优化? 你们的代码写的这么拉?不优化都不能使用? 性能优化是一个高级前端的必要技能?...页面中存在很多接口进行优先级排序,优先请求页面重要信息的接口,并关注同一刻请求的接口数量,如果过多进行分批请求 对于一些确实比较慢的接口使用loading或骨架屏 懒加载列表,懒加载图片,对移出可视区的图片和...dom进行销毁 关注页面中使用到的图片大小,推动后端进行图片压缩 地图撒点使用聚合减少地图引擎渲染压力 对于一些频繁的操作使用防抖或节流 使用三方库或组件库尽量采用按需加载,减少打包体积 组件卸载时取消事件的监听...id来检查是否存在可复用节点,如果没有,那么代表是新增节点,那么创建新节点即可;如果有,那么就判断节点数据是否发生改变,没有改变直接复用,如果发生了改变那么判断是否可以进行更新,如果更新成本高那么直接重新创建...,导致激活操作需要重新计算节点大小,更新节点样式,在多选和全选操作下非常耗时,所以后期改为只允许修改不改变节点大小的样式属性 其他一些细节优化:对于数据没有改变的操作不触发赋值或函数调用,一些不起眼的操作可能也是需要耗费时间的

    22620
    领券