vuex页面刷新导致数据丢失的解决方案


Posted in Vue.js onDecember 10, 2020

解决vuex页面刷新导致数据丢失问题

vuex数据是存在内存当中,当页面刷新之后vuex数据自然会丢失。我们有两种方法解决该问题:
1.使用vuex-along
2.使用localStorage或者sessionStroage

1.使用vuex-along

vuex-along的实质也是将vuex中的数据存放到localStorage或者sessionStroage中,只不过这个存取过程这个组件会帮我们完成,我们只需要用vuex的读取数据方式操作就可以了,简单了解一下vuex-along的使用方法。

安装vuex-along:

npm install vuex-along --save

配置vuex-along: 在store/index.js 中最后添加以下代码:

import VueXAlong from 'vuex-along' //导入插件
export default new Vuex.Store({
  //modules: {
    //controler //模块化vuex
  //},
  plugins: [VueXAlong({
    name: 'store',   //存放在localStroage或者sessionStroage 中的名字
    local: false,   //是否存放在local中 false 不存放 如果存放按照下面session的配置
    session: { list: [], isFilter: true } //如果值不为false 那么可以传递对象 其中 当isFilter设置为true时, list 数组中的值就会被过滤调,这些值不会存放在seesion或者local中
  })]
});

2.使用localStorage或者sessionStroage

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页面刷新导致数据丢失问题。按照上面的方法配置之后就可以正常使用vuex了,页面刷新数据也不会丢失了。

以上就是vuex页面刷新导致数据丢失的解决方案的详细内容,更多关于vuex 数据丢失的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
Vue项目如何引入bootstrap、elementUI、echarts
Nov 26 Vue.js
vue基于Echarts的拖拽数据可视化功能实现
Dec 04 Vue.js
VUE中鼠标滚轮使div左右滚动的方法详解
Dec 14 Vue.js
如何在vue中使用kindeditor富文本编辑器
Dec 19 Vue.js
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
Jan 13 Vue.js
vue实现禁止浏览器记住密码功能的示例代码
Feb 03 Vue.js
vue中data改变后让视图同步更新的方法
Mar 29 Vue.js
vue使用v-model进行跨组件绑定的基本实现方法
Apr 28 Vue.js
Vue如何实现组件间通信
May 15 Vue.js
Vue提供的三种调试方式你知道吗
Jan 18 Vue.js
vue+elementUI实现表格列的显示与隐藏
Apr 13 Vue.js
vue封装数字翻牌器
Apr 20 Vue.js
详解vue-cli项目在IE浏览器打开报错解决方法
Dec 10 #Vue.js
Vue+element-ui添加自定义右键菜单的方法示例
Dec 08 #Vue.js
vue添加自定义右键菜单的完整实例
Dec 08 #Vue.js
vue中如何自定义右键菜单详解
Dec 08 #Vue.js
基于vue与element实现创建试卷相关功能(实例代码)
Dec 07 #Vue.js
vue祖孙组件之间的数据传递案例
Dec 07 #Vue.js
在vue中动态修改css其中一个属性值操作
Dec 07 #Vue.js
You might like
PHP 5.0对象模型深度探索之绑定
2006/09/05 PHP
用php写的serv-u的web申请账号的程序
2006/10/09 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
2013/06/28 PHP
php+mysqli数据库连接的两种方式
2015/01/28 PHP
js正确获取元素样式详解
2009/08/07 Javascript
js控制表单不能输入空格的小例子
2013/11/20 Javascript
JS小功能(列表页面隔行变色)简单实现
2013/11/28 Javascript
nodejs分页类代码分享
2014/06/17 NodeJs
一个JavaScript处理textarea中的字符成每一行实例
2014/09/22 Javascript
使用js实现的简单拖拽效果
2015/03/18 Javascript
jquery validate表单验证的基本用法入门
2016/01/18 Javascript
JS实现的自定义显示加载等待图片插件(loading.gif)
2016/06/17 Javascript
jquery判断iPhone、Android设备类型
2016/09/14 Javascript
KnockoutJS 3.X API 第四章之表单value绑定
2016/10/10 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
2016/11/07 Javascript
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
2017/06/09 jQuery
详解node单线程实现高并发原理与node异步I/O
2017/09/21 Javascript
vue中引用swiper轮播插件的教程详解
2018/08/16 Javascript
jquery实现垂直手风琴菜单
2020/03/04 jQuery
javascript中的offsetWidth、clientWidth、innerWidth及相关属性方法
2020/05/14 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
2020/08/22 Javascript
python append、extend与insert的区别
2016/10/13 Python
你眼中的Python大牛 应该都有这份书单
2017/10/31 Python
python中文乱码不着急,先看懂字节和字符
2017/12/20 Python
Python Logging 日志记录入门学习
2018/06/02 Python
Pycharm导入Python包,模块的图文教程
2018/06/13 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
如何利用Boost.Python实现Python C/C++混合编程详解
2018/11/08 Python
python网络爬虫 CrawlSpider使用详解
2019/09/27 Python
python3字符串输出常见面试题总结
2020/12/01 Python
《动手做做看》教学反思
2014/04/09 职场文书
2014年秋季开学典礼致辞
2014/08/02 职场文书
婚庆答谢词大全
2015/09/29 职场文书
2017春节晚会开幕词
2016/03/03 职场文书
Python 实现Mac 屏幕截图详解
2021/10/05 Python
Java服务调用RestTemplate与HttpClient的使用详解
2022/06/21 Java/Android