模块化vuex里使用vuex-persistedstate
时间: 2023-05-18 19:05:56 浏览: 112
Vuex持久化插件(vuex-persistedstate)解决刷新数据消失的问题
5星 · 资源好评率100%
可以使用 vuex-persistedstate 插件来实现 vuex 模块化的持久化存储。首先,在每个需要持久化的模块中引入 vuex-persistedstate 插件,然后在模块的 state 中定义需要持久化的属性,最后在插件的配置中指定需要持久化的模块和属性即可。以下是一个示例代码:
```javascript
// store/modules/user.js
import createPersistedState from 'vuex-persistedstate'
const state = {
token: '',
userInfo: {}
}
const mutations = {
setToken(state, token) {
state.token = token
},
setUserInfo(state, userInfo) {
state.userInfo = userInfo
}
}
export default {
namespaced: true,
state,
mutations,
plugins: [createPersistedState({
key: 'user',
paths: ['token', 'userInfo']
})]
}
```
在上面的代码中,我们定义了一个名为 user 的模块,其中包含了需要持久化的 token 和 userInfo 属性。我们使用了 vuex-persistedstate 插件,并在插件的配置中指定了需要持久化的模块和属性。这样,当用户刷新页面或关闭浏览器后再次打开时,用户的登录状态和个人信息都会被保留下来。
希望这个回答对你有所帮助!
阅读全文