解决ios系统(苹果)刷新后vuex数据丢失问题

2023-12-28 20:50:00

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

解决ios系统(苹果)刷新后vuex数据丢失问题

App.vue页面也引入

<script>

export default {
  name: 'App',
  created() {
    if (window.localStorage.getItem('store')) {
      this.$store.replaceState(
        Object.assign(
          {},
          this.$store.state,
          JSON.parse(window.localStorage.getItem('store'))
        )
      )
      // 刷新重置loading状态
      // this.$store.state.permission.loading = false
    }
	   window.addEventListener('beforeunload', () => {
        
	    	window.localStorage.setItem('store', JSON.stringify(this.$store.state))
	    })
      
  },
  //两个生命周期解决ios登录刷新登出问题
  beforeMount() {
  window.addEventListener('pagehide', () => {
    sessionStorage.setItem('store', JSON.stringify(this.$store.state));
  });
  },
  mounted() {
    const storeData = sessionStorage.getItem('store');
    if (storeData) {
      this.$store.replaceState(JSON.parse(storeData));
    }
  }
  
}
</script>

总结

文章来源:https://blog.csdn.net/yang20000222/article/details/135276954
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。