VuexPersistence的原理及使用

803 阅读1分钟

Vuex解决了多视图之间的数据共享问题。但是运用过程中又带来了一个新的问题是,Vuex 的状态存储并不能持久化。也就是说当你存储在 Vuex 中的 store 里的数据,只要一刷新页面,数据就丢失了。

引入vuex-persist 插件,它就是为 Vuex 持久化存储而生的一个插件。不需要你手动存取 storage ,而是直接将状态保存至 cookie 或者 localStorage 中。

安装: yarn add vuex-persist

使用: import VuexPersistence from 'vuex-persist'

引入后创建实例

在安装的时候 有时候会报错

error An unexpected error occurred: "expected workspace package to exist for "postcss-loader"".

解决方案如下: yarn policies set-version 1.18.0

//使用vuex-persist插件解决页面刷新后store为空的问题
const vuexLocal = new VuexPersistence({
  storage: window.sessionStorage
});