vuex【解决方案】刷新页面数据丢失(两种方法)—— 含 vuex-along 教程

简介: vuex【解决方案】刷新页面数据丢失(两种方法)—— 含 vuex-along 教程

问题描述

存入vuex中的数据,在用户刷新页面后会丢失

原因解析

js代码运行时所有变量、函数都保存在内存中。刷新页面后,以前申请的内存被释放,脚本代码重新加载,变量会重新赋值。

解决方案一 sessionStorage

src\App.vue 中添加代码

  created() {
    //在页面加载时读取sessionStorage里的状态信息
    if (sessionStorage.getItem("store")) {
      this.$store.replaceState(
        Object.assign(
          {},
          this.$store.state,
          JSON.parse(sessionStorage.getItem("store"))
        )
      );
    }
    //在页面刷新时将vuex里的信息保存到sessionStorage里
    window.addEventListener("beforeunload", () => {
      sessionStorage.setItem("store", JSON.stringify(this.$store.state));
    });
  },

解决方案二 vuex-along

原理也是使用了本地存储,官网教程 https://github.com/boenfu/vuex-along/blob/master/README.md

npm install vuex-along --save

src\store\index.js 中添加

import createVuexAlong from "vuex-along"; //vuex-along

plugins: [createVuexAlong()], //vuex-along

最终效果如下:

import createVuexAlong from "vuex-along"; //vuex-along
 
const store = new Vuex.Store({
  plugins: [createVuexAlong()], //vuex-along
  state,
  getters,
  mutations,
  actions,
});
export default store;


目录
相关文章
|
Ubuntu Linux
在Linux中如何解压 .xz 和 tar.xz 文件?
【4月更文挑战第17天】
15774 6
在Linux中如何解压 .xz 和 tar.xz 文件?
|
8月前
|
存储 数据安全/隐私保护
如何在 Vuex 中使用插件进行状态持久化?
如何在 Vuex 中使用插件进行状态持久化?
876 122
|
存储 缓存 JavaScript
【vue2】解决Vuex刷新页面数据丢失的问题
【vue2】解决Vuex刷新页面数据丢失的问题
1254 6
|
前端开发 JavaScript 应用服务中间件
前端跨域问题解决Access to XMLHttpRequest at xxx from has been blocked by CORS policy
跨域问题是前端开发中常见且棘手的问题,但通过理解CORS的工作原理并应用合适的解决方案,如服务器设置CORS头、使用JSONP、代理服务器、Nginx配置和浏览器插件,可以有效地解决这些问题。选择合适的方法可以确保应用的安全性和稳定性,并提升用户体验。
8982 90
|
监控 NoSQL Java
若依RuoYi项目环境搭建教程(RuoYi-Vue + RuoYi-Vue3版本)
若依(RuoYi)是一款基于Spring Boot和Vue.js的开源Java快速开发脚手架,支持OAuth2、JWT鉴权,集成多种安全框架和持久化框架。它提供了系统管理、监控管理、任务调度、代码生成等常用功能模块,适合中小型公司快速搭建Web应用。本文主要介绍若依框架的特点、版本发展、优缺点及项目部署步骤,帮助开发者快速上手并部署若依项目。
20564 3
若依RuoYi项目环境搭建教程(RuoYi-Vue + RuoYi-Vue3版本)
|
缓存 监控 JavaScript
【Vue面试题二十六】、SSR解决了什么问题?有做过SSR吗?你是怎么做的?
这篇文章详细介绍了服务端渲染(SSR)的原理、解决了哪些问题、以及如何在Vue应用中实现SSR,包括项目配置、代码结构、路由配置、数据预取和服务器端的渲染流程。
【Vue面试题二十六】、SSR解决了什么问题?有做过SSR吗?你是怎么做的?
|
JavaScript Java CDN
vue3完整教程从入门到精通(新人必学1,vue3快速上手)
本文提供了Vue 3从入门到精通的完整教程,涵盖了创建Vue应用、通过CDN使用Vue、定义网站以及使用ES模块构建版本的步骤和示例代码。
11049 1
vue3完整教程从入门到精通(新人必学1,vue3快速上手)
|
JavaScript 测试技术 API
如何从 Vue 2 无痛升级到 Vue 3,一文搞定!
如何从 Vue 2 无痛升级到 Vue 3,一文搞定!
13538 8

热门文章

最新文章