vue3 store刷新失效场景解决方案

1. 安装 vuex-persistedstate 插件

vuex-persistedstate 是一个常用的插件,可以方便地将 Vuex 状态持久化到 localStorage 或 sessionStorage 中

复制代码
npm install vuex-persistedstate

2. 配置 Vuex Store 使用 sessionStorage

javascript 复制代码
// store/index.js
import { createStore } from 'vuex';
import createPersistedState from 'vuex-persistedstate';

export default createStore({
  state: {
    member: {}
  },
  mutations: {
    SET_MEMBER(state, payload) {
      state.member = payload;
    }
  },
  actions: {
    fetchMember({ commit }) {
      // 模拟异步获取用户信息
      setTimeout(() => {
        commit('SET_MEMBER', { name: 'John Doe', id: 1 });
      }, 1000);
    }
  },
  plugins: [
    createPersistedState({
      storage: window.sessionStorage, // 使用 sessionStorage
      paths: ['member'] // 指定要持久化的 state 路径
    })
  ]
});

3 .核心代码

javascript 复制代码
 plugins: [
    createPersistedState({
      storage: window.sessionStorage, // 使用 sessionStorage
      paths: ['member'] // 指定要持久化的 state 路径
    })
  ]
相关推荐
qq_1777673742 分钟前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos
烬头88211 小时前
React Native鸿蒙跨平台应用实现了onCategoryPress等核心函数,用于处理用户交互和状态更新,通过计算已支出和剩余预算
前端·javascript·react native·react.js·ecmascript·交互·harmonyos
天人合一peng3 小时前
Unity中button 和toggle监听事件函数有无参数
前端·unity·游戏引擎
方也_arkling4 小时前
别名路径联想提示。@/统一文件路径的配置
前端·javascript
毕设源码-朱学姐4 小时前
【开题答辩全过程】以 基于web教师继续教育系统的设计与实现为例,包含答辩的问题和答案
前端
web打印社区4 小时前
web-print-pdf:突破浏览器限制,实现专业级Web静默打印
前端·javascript·vue.js·electron·html
RFCEO5 小时前
前端编程 课程十三、:CSS核心基础1:CSS选择器
前端·css·css基础选择器详细教程·css类选择器使用方法·css类选择器命名规范·css后代选择器·精准选中嵌套元素
Amumu121385 小时前
Vuex介绍
前端·javascript·vue.js
We་ct5 小时前
LeetCode 54. 螺旋矩阵:两种解法吃透顺时针遍历逻辑
前端·算法·leetcode·矩阵·typescript
2601_949480066 小时前
【无标题】
开发语言·前端·javascript