Vue界面刷新时仓库Store的数据丢失

问题描述

Vue界面刷新时仓库Store的数据丢失

解决方案:

1.在页面刷新时将store保存到sessionStorage里
2.在页面加载时读取sessionStorage

created() {
  // 在页面加载时读取sessionStorage
  if (sessionStorage.getItem('store')) {
    this.$store.replaceState(
      Object.assign(
        {},
        this.$store.state,
        JSON.parse(sessionStorage.getItem('store'))
      )
    )
    setTimeout(() => {
      sessionStorage.removeItem('store')
    }, 1000)
  }
  // 在页面刷新时将store保存到sessionStorage里
  window.addEventListener('beforeunload', () => {
    sessionStorage.setItem('store', JSON.stringify(this.$store.state))
  })
},

你可能感兴趣的:(vue.js,javascript)