Vue中vuex的应用(一)

简介: Vue中vuex的应用(一)

Vuex


vuex是一种项目中数据共享的方式。(vuex是项目中对于大规模状态【数据】的管理工具)

其具有以下优势:

  • 能够在vuex中集中管理共享的数据,便于开发和后期进行维护
  • 能够高效的实现组件之间的数据共享,提高开发效率(代码量
  • 存储在vuex中的数据是响应式的,当数据发生改变时,页面中的数据也会同步更新


什么样的数据适合存储在Vuex中?

一般情况下,只有组件之间共享的数据才有必要存储到vuex中,对于组件中私有的数据依旧存储在组件自身的data中即可。

注意事项:由于vue项目一刷新就会重新编译,因此每次刷新都会重新初始化vuex中的数据,会导致之前的数据丢失,因此vuex中一般不保存非常重要的数据。【放在vuex中的数据一般是刷新后也不影响业务的数据】


vuex核心概念(

vuex的核心组成:


  • state:状态,用于初始化仓库中的数据,在这里声明项目中全局使用的数据
  • mutations:修改state数据的方法,存放用于修改state数据的方法

只存放同于同步修改数据的方法

每个方法接收俩个形参,依次是:

state:object,指的是仓库中的数据

payload:any类型,用于修改数据的数据源(可选)

函数不需要return,所有操作都是基于state直接更改

actions:修改state数据的方法,存放用于修改state数据的方法

只存放同于异步修改数据的方法

每个方法接收俩个形参,依次是:

context:object,指的是仓库对象(上下文对象)

payload:any类型,用于修改数据的数据源(可选)

函数不需要return,所有操作都是基于state直接更改

这里的方法本身自己不直接该数据,而是通过context对象调用mutations中的方法去修改数据

getters:获取并修饰数据(对数据进行格式处理),存储用于修饰数据的方法

里面的方法有一个形参

state:object,指的是仓库中的数据

每个函数必须有返回值,返回修饰完的数据

modules:模块化,存放模块化后的仓库模块,这里存放导入进来的模块变量


vuex语法,vuex支持对象属性形式、辅助函数形式去操作store中数据,所以每个操作都具备俩个语法:


获取state数据


对象属性:this.$store.state.属性名

辅助函数:mapState

作用:将指定的state中的数据映射为组件自身的计算属性

语法:

写在computed中

…mapState([属性名1,属性名2,…])


同步修改数据


对象属性:this.$store.commit(方法名,载荷数据)

辅助函数:mapMutations

作用:将指定的mutations中的方法映射为组件自身的方法

语法:

写在methods中

…mapMutations([方法名1,方法名2,…])


异步修改数据


对象属性:this.$store.dispatch(方法名,载荷数据)

辅助函数:mapActions

作用:将指定的Actions中的方法映射为组件自身的方法

语法:

写在methods中

…mapActions([方法名1,方法名2,…])


获取修饰数据


对象属性:this.$store.getters.属性名

辅助函数:mapGetters

作用:将指定的getters中的数据映射为组件自身的计算属性

语法:

写在computed中

…mapGetters([属性名1,属性名2,…])

目录
相关文章
|
2天前
|
资源调度 JavaScript 前端开发
【vue】vue中的路由vue-router,vue-cli脚手架详细使用教程
【vue】vue中的路由vue-router,vue-cli脚手架详细使用教程
|
2天前
|
JavaScript 前端开发
vue组件化开发流程梳理,拿来即用
vue组件化开发流程梳理,拿来即用
|
2天前
|
JavaScript
Vue 中如何模块化使用 Vuex
Vue 中如何模块化使用 Vuex
|
2天前
|
JavaScript Go
Vue路由跳转及路由传参
Vue路由跳转及路由传参
|
3天前
|
JavaScript 前端开发 BI
采用前后端分离Vue,Ant-Design技术开发的(手麻系统成品源码)适用于三甲医院
开发环境 技术架构:前后端分离 开发语言:C#.net6.0 开发工具:vs2022,vscode 前端框架:Vue,Ant-Design 后端框架:百小僧开源框架 数 据 库:sqlserver2019
采用前后端分离Vue,Ant-Design技术开发的(手麻系统成品源码)适用于三甲医院
|
5天前
|
监控 JavaScript
Vue中的数据变化监控与响应——深入理解Watchers
Vue中的数据变化监控与响应——深入理解Watchers
|
5天前
|
JavaScript 安全 前端开发
Vue 项目中的权限管理:让页面也学会说“你无权访问!
Vue 项目中的权限管理:让页面也学会说“你无权访问!
15 3
|
5天前
|
JavaScript 测试技术 开发者
Vue 3 Vuex:构建更强大的状态管理系统
Vue 3 Vuex:构建更强大的状态管理系统
13 1
|
5天前
|
JavaScript 前端开发 开发者
Vue的神奇解锁:冒险的开始
Vue的神奇解锁:冒险的开始
5 1
|
前端开发 JavaScript API
【mock】后端不来过夜半,闲敲mock落灯花 (mockjs+Vuex+Vue实战)
mock的由来【假】   赵师秀:南宋时期的一位前端工程师 诗词背景:在一个梅雨纷纷的夜晚,正处于项目编码阶段,书童却带来消息:写后端的李秀才在几个时辰前就赶往临安度假去了,!此时手头仅有一个简单的数据接口文档的赵师秀慨叹一声:"好吧,那还是我自己先模拟一下后端的接口吧"   _(:...
1512 0