vuex-persistedstate作用
vuex可以进行全局的状态管理,但刷新后刷新后数据会消失,解决方案如下:
- 结合本地存储做到数据持久化
vuex的state在localStorage或sessionStorage或其它存储方式中取值
在mutations,定义的方法里对vuex的状态操作的同时对存储也做对应的操作。 这样state就会和存储一起存在并且与vuex同步,但这样手动写比较麻烦。 - 通过插件-vuex-persistedstate
插件的原理其实也是结合了存储方式,只是统一的配置就不需要手动每次都写存储方法
使用方法:
1.安装:npm install vuex-persistedstate --save
2.引入及配置 :在store下的index.js中
import createPersistedState from "vuex-persistedstate"
const store = new Vuex.Store({
// ...
plugins: [createPersistedState()]
})
3.在不同地方存储的使用
存储到sessionStorage(cookie用法相同):
import createPersistedState from "vuex-persistedstate"
const store = new Vuex.Store({
// ...
plugins: [createPersistedState({
storage: window.sessionStorage
})]
})