页面的通讯就是:在同一个项目中,两个页面在同时开启的情况下,页面A做操作,页面B也跟着做操作,实现页面同步

这里我们就使用localStorage.setItem来实现两个页面之件的通讯,正常的localStorage.setItem是永久性存储,但是我们可以重新定义localStorage.setItem的方法,让它变为我们通讯用的函数

假设我们页面A,写以下内容:

// 第一个参数是  通讯名称,第二个是 当前时间的毫秒数
localStorage.setItem('name',new Date().getTime());//这个写在需要操作的页面

那么我们的页面B,就要写:

//两个页面 之间的 通讯
const fn = (a, b) => {
      // console.log(a.key);
      //这里我们就需要做判断,判断是不是对应的 通讯
     if (a.key === 'name') {
           //这里我们就能做对应的操作
         console.log('是正确的通讯')
       }
 }
//在window 添加监视器
window.addEventListener('storage', fn)
 return () => {
    //最后清理通讯缓存
    window.removeEventListener('storage', fn)
}

一般像这种操作 在退出登录里面使用的比较多,当然也可以做其他的数值的修改

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐