vue 【Vuex】解决 vuex 刷新后数据丢失问题
详细描述
Vuex刷新界面导致数据丢失问题
版本信息
Vue3+Vuex4
解决方案
其实Vuex本质上就不能将对象存储到内存之中,官方的介绍只是【抽取组件共享状态,以单列模式管理】,也就是是,Vuex从本质上只是将组件的数据全局管理,并没有本地存储的功能。
解决方案可以将Vuex的数据存储到session或者内存中:
安装 vuex-persistedstate
npm install --save vuex-persistedstate
在 store.js 中引入配置,只是在原有的配置上新增了一项plugins: [createPersistedState()],
import createPersistedState from 'vuex-persistedstate'
const store = new Vuex.Store({
state: {
user: {}, // 用户信息
},
mutations: {
setUser (state,user) {
state.user = user
}
},
//把数据存储到本地 localStorage
plugins: [createPersistedState()],
})
export default store
或者存储到 session 中
import createPersistedState from 'vuex-persistedstate'
const store = new Vuex.Store({
state: {
user: {}, // 用户信息
},
mutations: {
setUser (state,user) {
state.user = user
}
},
//把数据存储到本地 session
plugins: [createPersistedState({
storge: window.sessionStorage
})],
})
export default store

文章有用
已有
1人
推荐该文章,推荐越多越容易获得的官方扶持