vue中的vuex的数据持久化

news/2024/7/9 23:52:08 标签: vue.js, vue

首先,什么是vuex?vuex就是一个集中式的状态管理工具,在许多页面需要共享同一个或者多个值/状态的时候就会用到vuex, 但是,vuex不同于cookie和localStroage, 页面刷新, state中的数据就会丢失。因此我们需要对vuex中的状态做持久化的处理。

使用插件 vuex-persistedstate 对数据进行数据的持久化处理

1.安装

npm install vuex-persistedstate --save

在store下的index.js下引入

import createPersistedState from "vuex-persistedstate";

使用:

// 数据的持久化处理
  plugins: [
    createPersistedState({
      // 存储方式:localStorage、sessionStorage、cookies
      storage: window.cookies,//存储到cookie
      // storage:window.sessionStorage 存储到sessionStorage
      // 如果不写默认存储到localStorage
      // 存储的 key 的key值
      key: "store",
      render(state) {
        // 要存储的数据:本项目采用es6扩展运算符的方式存储了state中所有的数据
        return { ...state };
        //需要存储其中的某些数据的话需要单独取出来
       // return {
        	//只储存state中的assessmentData
            //assessmentData: val.assessmentData
      //}
    })
  ]

也可以使用多个插件
plugins要是一个一维数组不然会解析错误

 plugins: debug ? [createLogger(), createPersisted] : [createPersisted]

补充,实际开发中,我们不会把所有的状态都只放在一个state中,所以就有了modules
当我们有多个vuex状态的时候

import Vue from 'vue'
import Vuex from 'vuex'
import user from './user.js' //这是专门管理user的
import admin from './admin.js' // 这是专门管理admin的
Vue.use(Vuex)
let storeRoot={
  state: {
	  
  },
  mutations: {
	 
  },
  actions: {
	  
  },
  modules: {
  	//在这里进行引用
	  user,
	  admin
  }
}

export default new Vuex.Store(storeRoot) //导出

admin文件

let admin={
	namespaced: true,
	state: {
	},
	mutations: {
	},
	actions: {
		}
	}
}

export default admin

文章到此结束,加油,前端的路还很远!!!!!!!


http://www.niftyadmin.cn/n/1496779.html

相关文章

CCNP-27 管理距离(BSCI)

CCNP-27 管理距离 实验拓扑:试验要求:R1与R2之间起OSPF路由协议R1与R3与R4与R2之间起RIPv2路由协议,然后在R1与R2上重发布RIPv2路由协议。 试验目的:掌握在路由重分布的时候管理距离的用法和配置方法。试验配置:R1&…

图片懒加载之IntersectionObserver对象

图片懒加载之IntersectionObserver对象,本文只介绍使用IntersectionObserver进行图片懒加载的方式 代码如下: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" con…

31 天重构学习笔记19. 提取工厂类

摘要&#xff1a;由于最近在做重构的项目&#xff0c;所以对重构又重新进行了一遍学习和整理&#xff0c;对31天重构最早接触是在2009年10月份&#xff0c;由于当时没有 订阅Sean Chambers的blog&#xff0c;所以是在国外的社区上闲逛的时候链接过去的。记得当时一口气看完了整…

18. 抽象类

1.抽象分析 需求&#xff1a;定义一个狗类和鸟类&#xff0c;并且具备叫的方法&#xff0c;例如 汪汪 叽叽喳喳 方案&#xff1a;定义一个父类&#xff08;基类&#xff09;Animal&#xff0c;并且有动物的名字和叫法。 再定义2个子类继承父类 苦恼&#xff1a;动物一般都有叫…

RAC安装之一 安装前准备

Oracle中的RAC技术是一门很高深的艺术&#xff0c;RAC是real application cluster的英文缩写&#xff0c;中文翻译为真实应用集群。oracle的集群为多个数据库实例对应一个数据库&#xff0c;因而需要使用到共享存储&#xff0c;也就是所谓的盘阵(一盘多机)&#xff0c;在本文中…

内部类学习笔记

注&#xff1a;转自牛客网网友解析答案 1.为什么使用内部类?使用内部类最吸引人的原因是&#xff1a;每个内部类都能独立地继承一个&#xff08;接口的&#xff09;实现&#xff0c;所以无论外围类是否已经继承了某个&#xff08;接口的&#xff09;实现&#xff0c;对于内部类…

使用 Azure CLI 创建和管理 Linux VM

Azure 虚拟机提供完全可配置的灵活计算环境。 本教程介绍 Azure 虚拟机的基本部署项目&#xff0c;例如选择 VM 大小、选择 VM 映像和部署 VM。 你将学习如何执行以下操作&#xff1a; 创建并连接到 VM选择并使用 VM 映像查看和使用特定 VM 大小调整 VM 的大小查看并了解 VM 状…

201571030315\201571030303《小学生四则运算软件需求说明结对项目报告》

以实验二个人项目、实验三结对项目所开发的小学生四则运算练习软件作为原型&#xff0c;实施小学生四则运算练习软件用户调研活动。 &#xff08;1&#xff09;调研对象&#xff1a;小学生&#xff0c;小学数学代课老师,家长 &#xff08;2&#xff09;要利用实验二、实验三开发…