網頁刷新後Vuex後數據丟失處理問題

網頁刷新後Vuex數據丟失或者恢復了默認值,我們可以通過localStorage來組合使用。

在store文件夾的index文件裏面

1、首先我們在改變Vuex裏面值的時候,在localStorage也存一份,在使用Vuex取值的時候優先在localStorage裏面取值。

2、但是某些瀏覽器可能不支持localStorage,所以要try catch一下,有一點要特別注意的是,try catch的catch和後面的(e)之間有個空格一定不能忘,否則會報錯。

import Vue from 'vue'
import Vuex from 'vuex'


Vue.use(Vuex)

let defaultCity = '上海'
try {
  if (localStorage.city) {
    defaultCity = localStorage.city
  }
} catch (e) {}

export default new Vuex.Store{
  changeCity (state, city) {
    state.city = city
    try {
      localStorage.city = city
    } catch (e) {}
  }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章