iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue如何实现利用vuex永久储存数据
  • 249
分享到

Vue如何实现利用vuex永久储存数据

Vue储存数据vuex永久储存数据vuex储存数据 2023-05-16 14:05:24 249人浏览 薄情痞子
摘要

目录Vue用vuex永久储存数据基于vuex的数据持久化问题存在问题此问题映射在本项目上的体现解决方法:使用vuex的数据持久化总结Vue用vuex永久储存数据 首先需要在 vue项

Vue用vuex永久储存数据

首先需要在 vue项目上  安装 vuex 与 vuex-persistedstate 

npm i vuex 
npm install --save vuex-persistedstate

1. 在 src 目录下 创建 "store" 文件夹

2. 在store 文件夹下 创建 自定义 " index.js" 文件

3.在 index.js 中 import  引入 vue , vuex , persistedstate  并且使用use 方法是用 Vuex

4. 在store对象内  plugins: [createPersistedState()],  使用 persistedstate 组件

5.把store文件夹 引入  main.js 中

最后  可以用 以下方法 访问到数据 , console.log(this.$store)  看下就明白了

this.$store.state

this.$store.commit('函数名','需要传的参数')

import Vue from 'vue'
import Vuex from 'vuex'
import createPersistedState from 'vuex-persistedstate'
Vue.use(Vuex)
 
const store = new Vuex.Store({
  plugins: [createPersistedState()],
  state: {
    isLoading: false,
    num: ['1']
  },
  mutations: {
    loading (state, str) {
      let list = []
      list.push(str)
      state.num = [...state.num, ...list]
      console.log('ok')
    }
  }
})
export default store

基于vuex的数据持久化问题

存在问题

前端在使用vuex存储数据的时候,一旦页面刷新,所有之前存储的数据就会丢失。这是因为js代码运行在内存中,代码在运行时,所有的变量和函数都是保存在内存中的,因此在刷新时,之前申请的内存会被释放,js脚本会被重新加载,变量重新赋值。

此问题映射在本项目上的体现

为了更直观方便的处理数据,一方面在数据库中设置了服务类型表,另一方面在前端视图层处理时,将服务列表里的类型数据都统计一遍,存放在vuex的state中。

为了提高本项目的执行效率,我在vuex中设置了一个flag布尔变量,初值为true,保证只有在第一次挂载组件时才向后台发出请求,获取所有服务信息,并且修改flag值为false。

但是这样就会导致一个问题:下一次再重新登陆的时候,vuex数据刷新,但是不会再请求后台数据了,因此得不到后台的数据。

然后我又找了一个办法,当每次登陆的时候,把vuex中的flag值重新设置为true,这样虽然解决了之前登陆之后没有数据显示的问题,但是同时也造成了另一个问题:数据累加,登陆一次所有之前的服务类型数据就会累加一次

解决方法:使用vuex的数据持久化

实现方式:

1.利用浏览器的本地存储localStorage和sessionStorage

  • vuex的state在localStorage或sessionStorage取值
  • 在mutations里面,定义的方法对vuex的状态操作的同时,对存储也做对应的操作

2.利用vue-presistedstate插件

  • 原理和方法1一样,也是结合了浏览器的本地存储localStorage和sessionStorage,只不过是统一的配置,不需要每次都手写存储方法。
  • 安装方式;npm install vuex-persistedstate --save
  • 引入:在store下的index.js中引入,然后使用插件plugins

本项目为了高效方便,采用了第二种下载插件的方式。

这样就实现了vuex中数据持久化的效果,之前存储的数据再刷新和退出之后就不会丢失了。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。 

--结束END--

本文标题: Vue如何实现利用vuex永久储存数据

本文链接: https://www.lsjlt.com/news/210000.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue如何实现利用vuex永久储存数据
    目录Vue用vuex永久储存数据基于vuex的数据持久化问题存在问题此问题映射在本项目上的体现解决方法:使用vuex的数据持久化总结Vue用vuex永久储存数据 首先需要在 vue项...
    99+
    2023-05-16
    Vue储存数据 vuex永久储存数据 vuex储存数据
  • PHP如何实现数据类型永久转换
    这篇文章将为大家详细讲解有关PHP如何实现数据类型永久转换,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。永久转换<php  $old=500;   ...
    99+
    2023-06-17
  • 如何利用Kubernetes实现容器的持久化存储
    本篇内容主要讲解“如何利用Kubernetes实现容器的持久化存储”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用Kubernetes实现容器的持久化存储”吧!  可以说,容器化彻底改变了...
    99+
    2023-06-04
  • 如何利用Python连接MySQL数据库实现数据储存
    目录介绍 Python连接MySQL实现数据储存总结介绍 MySQL是一个关系型数据库,MySQL由于性能高、成本低、可靠性好,已经成为最流行的开源数据库。最开始由瑞典的MySQL...
    99+
    2022-11-12
  • 如何在Android开发中利用数据持久化存储文件
    这期内容当中小编将会给大家带来有关如何在Android开发中利用数据持久化存储文件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。数据持久化数据持久化, 就是将内存中的瞬时数据保存在存储设备中, 保证即便关...
    99+
    2023-05-31
    android 数据持久化 roi
  • Android中怎么利用SharedPreference实现数据储存
    今天就跟大家聊聊有关Android中怎么利用SharedPreference实现数据储存,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。不同于文件形式的存储方式,SharedPrefe...
    99+
    2023-06-04
  • 如何利用 Java 和 Linux 实现高效的数据存储同步?
    数据存储同步是企业级应用程序中的一个关键问题,它涉及到数据的可靠性、实时性和高效性。在这篇文章中,我们将介绍如何利用 Java 和 Linux 实现高效的数据存储同步。 一、同步策略 在实现数据存储同步之前,我们需要确定同步策略。同步策略...
    99+
    2023-08-07
    linux 存储 同步
  • MYSQL中怎么利用DATE实现数据类型存储
    这篇文章给大家介绍MYSQL中怎么利用DATE实现数据类型存储,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 MYSQL-数据类型存储-DATE on E...
    99+
    2022-10-18
  • Pandas如何实现数据的存储
    这篇文章给大家分享的是有关Pandas如何实现数据的存储的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。数据的存储数据可以有两种类型-连续的和离散的,这取决于我们的分析要求。有时我们不需要连续变量中的精确值,但需要...
    99+
    2023-06-26
  • Python Pymysql如何实现数据存储
    这篇文章主要介绍“Python Pymysql如何实现数据存储”,在日常操作中,相信很多人在Python Pymysql如何实现数据存储问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Pyt...
    99+
    2023-07-05
  • 如何利用ASP.NET Core实现高效的大数据存储和管理?
    ASP.NET Core是一种开源的Web框架,可以帮助开发人员快速创建高性能的Web应用程序。当涉及到大数据的存储和管理时,ASP.NET Core可以提供许多有用的工具和功能,使这个过程更加高效和可靠。下面我们将介绍如何利用ASP.NE...
    99+
    2023-07-10
    大数据 leetcode linux
  • VueX浏览器刷新如何实现保存数据
    目录VueX浏览器刷新保存数据方法一方法二刷新浏览器后,Vuex的数据丢失,如何解决?解决方法VueX浏览器刷新保存数据 在vue项目中用vuex来做全局的状态管理, 发现当刷新网页...
    99+
    2022-11-13
  • Python 与 Apache 存储结合,如何实现高效数据存储?
    在现代科技领域,数据处理和存储是非常重要的问题。Python 作为一种高级编程语言,广泛应用于数据科学和数据处理领域。同时,Apache 是一个广泛使用的开源软件基金会,提供了许多数据存储和处理工具。本文将介绍 Python 和 Apac...
    99+
    2023-11-01
    接口 apache 存储
  • SharedPreferences如何在android中实现数据存储
    本篇文章为大家展示了SharedPreferences如何在android中实现数据存储,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Android平台给我们提供了一个SharedPreferenc...
    99+
    2023-05-31
    sharedpreferences android roi
  • MySQL 数据库如何实现存储时间
    目录1.切记不要用字符串存储日期2.Datetime 和 Timestamp 之间抉择2.1 DateTime 类型没有时区信息的2.2 DateTime 类型耗费空间更大3.再看 ...
    99+
    2022-11-13
  • 如何利用Redis实现分布式文件存储
    如何利用Redis实现分布式文件存储在分布式系统中,大规模的文件存储是一个常见的需求。Redis作为一个高性能的缓存和存储系统,具有快速、可靠和可扩展的特点,非常适合用来实现分布式文件存储。本文将介绍如何利用Redis实现分布式文件存储,并...
    99+
    2023-11-07
    分布式 redis 文件存储
  • Android应用中怎么利用SharedPreferences实现一个数据存储功能
    这期内容当中小编将会给大家带来有关Android应用中怎么利用SharedPreferences实现一个数据存储功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。除了SQLite数据库外,SharedPr...
    99+
    2023-05-31
    android sharedpreferences roi
  • Spring Data 利用JPA如何实现调用存储过程
    这篇文章给大家介绍Spring Data 利用JPA如何实现调用存储过程,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JPA连接到数据库,调用存储过程,这样的需求很常见。本文就针对这一点,讲述如何使用spring Da...
    99+
    2023-05-31
    jpa spring 存储过程
  • 如何实现数据存储和查询优化
    这篇文章主要讲解了“如何实现数据存储和查询优化”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现数据存储和查询优化”吧! ...
    99+
    2022-10-18
  • NumPy和PHP:如何实现快速数据存储?
    在数据科学领域,NumPy是一个非常流行的Python库,可以用于高效地处理大量的数值数据。而PHP则是一种流行的Web编程语言,用于开发动态网站和Web应用程序。在某些情况下,需要将NumPy数组保存到文件中,以便后续使用。在这篇文章中...
    99+
    2023-10-16
    存储 numy numpy
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作