vuex持久化vuex-persistedstate,存储的数据刷新页面后导致数据丢失

1.安装插件

vuex-persistedstate实现数据持久化,来解决使用vuex存储状态时页面刷新后数据消失的问题

vuex-persistedstate:在页面重新加载之间保持并重新补充Vuex状态

npm install --save vuex-persistedstate

2.具体的代码, 现在需要持久化存储的 requestUrl

user.js

state: {

requestUrl: ''

},

mutations: {

SET_WEBSITE_ROUTETURL: (state, title) => {

state.requestUrl = title;

},

},

actions: {

SetWebSiteTitle_routeUrl({ commit, state }, title) {

console.log(title)

commit('SET_WEBSITE_ROUTETURL', title);

},

}

index.js

import { createStore } from "vuex";

import app from "./modules/app";

import user from "./modules/user";

import tagsView from "./modules/tagsView";

import permission from "./modules/permission";

// import settings from './modules/settings'

import getters from "./getters";

import dict from './modules/dict'

import createPersistedState from 'vuex-persistedstate';

const vueStore = createStore({

state: {},

mutations: {},

actions: {},

modules: {

app,

user,

tagsView,

permission,

dict,

// settings

},

plugins: [

createPersistedState({

storage: window.localStorage,

reducer(state) {

return {

user: {

requestUrl: state.user.requestUrl, // 只持久化 requestUrl

},

};

},

}),

],

getters,

});

export default vueStore;

3.验证 localStorage 是否存储成功

  1. 打开 Application > Local Storage

  2. 确认是否存在键名 vuex,其值应包含 requestUrl

  3. 如果没有 vuex 键,说明插件未生效。

相关推荐
井柏然几秒前
重识 alias —— npm包开发的神器
前端·javascript·前端工程化
Mintopia4 分钟前
🤖 AIGC在Web教育场景中的自适应学习技术设计
前端·javascript·aigc
Mintopia8 分钟前
⚙️ Next.js 多环境部署全攻略
前端·javascript·全栈
ᐇ95912 分钟前
Java核心概念深度解析:从包装类到泛型的全面指南
java·开发语言
逻极17 分钟前
Rust之旅的起点:为什么选择Rust?
开发语言·后端·rust
cngm11020 分钟前
若依分离版前端部署在tomcat刷新404的问题解决方法
java·前端·tomcat
摸鱼的春哥20 分钟前
组合为啥比继承更高级?以构建buff系统为例
前端·javascript·后端
江城开朗的豌豆21 分钟前
让TS函数"说到做到":返回值类型约束的实战心得
前端·javascript
Tony Bai26 分钟前
从 Python 到 Go:我们失去了什么,又得到了什么?
开发语言·后端·python·golang
华如锦28 分钟前
使用SSE进行实时消息推送!替换WebSocket,轻量好用~
java·开发语言·网络·spring boot·后端·websocket·网络协议