vuex用于管理项目中的全局状态,但是我们一刷新vuex中保存的全局状态就会被全部初始化,vuex-persistedstate组件已经帮我们完成了同步更新,就是用浏览器本地缓存了数据。
npm install vuex-persistedstate --save
然后用vuex中的plugins属性挂载
配合state使用,存放在store目录下的index.js,来存储状态
import createPersistedState from 'vuex-persistedstate'
export default new Vuex.Store({
state,
mutations,
getters,
plugins: [createPersistedState()]
})
API
createPersistedState([options])
使用给定的选项创建插件的新实例。可以提供以下选项来配置您的特定需求的插件:
- key :存储持久状态的键。(默认:vuex)
- paths :部分持续状态的任何路径的数组。如果没有路径给出,完整的状态是持久的。(默认:[])
- reducer :一个函数,将被调用来减少基于给定的路径持久化的状态。默认包含这些值。
- subscriber :一个被调用来设置突变订阅的函数。默认为store => handler => store.subscribe(handler)
- storage