vuex详解和用法(Venx使用指南(精简版))

2025-07-01 10:30:01 3

vuex详解和用法(Venx使用指南(精简版))

大家好,vuex详解和用法相信很多的网友都不是很明白,包括Venx使用指南(精简版)也是一样,不过没有关系,接下来就来为大家分享关于vuex详解和用法和Venx使用指南(精简版)的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

本文目录

Venx使用指南(精简版)

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

Vuex 可以帮助我们管理共享状态,并附带了更多的概念和框架。这需要对短期和长期效益进行权衡。

如果您不打算开发大型单页应用,使用 Vuex 可能是繁琐冗余的。确实是如此——如果您的应用够简单,您最好不要使用 Vuex。一个简单的 store 模式 就足够您所需了。但是,如果您需要构建一个中大型单页应用,您很可能会考虑如何更好地在组件外部管理状态,Vuex 将会成为自然而然的选择。引用 Redux 的

我们的核心思想是要理解Vuex是是什么东西,用来做什么.
现在我们要把它(Vuex)看做是一个特殊的对象,是用来存放和提取的,所以要理解Vuex的关键是懂得存和取的思想.
下面进行配置:
(1).首先引进vue 和 vuex 并使用.

(2).声明一个变量存放vuex的基本配置
在这个对象里面要有两个特别关键的配置.
一个是存(state),一个是取state(mutations).

(3).最后再将其导出export default new Vuex.Store(options)

(现在可以用了!)

实例:需求APP底部有的页面需要底部有的页面不显示底部,在此我们使用Vuex 完成.
首先在state(储存)里设置 showFooter:false,默认不显示;

2.为提取(getters)在getters里面设置一个函数并且将上面的state传入 ,返回里面的值showFooter,

3.设置 mutation用来修改state里面的属性值

4.接下来我们要引进路由守卫的概念,简单介绍一下:
路由守卫是指当用户满足了某些要求之后才可以离开或者进入某个页面或者场景的时候使用。 比如说只有当用户填写了用户名和密码之后才可以进入首页,比如说用户离开某个页面时明月保存信息提示用户是否保存信息后再离开等操作,控制这些要求的就叫路由守卫。
此时我们来到router.index页面配置路由守卫结合Vuex完成我们的需求.

然后在路由配置中添加showFooter: true(因为要显示的多,不显示的少,所以,这里写显示,不想显示底部的页面只需要不写这句即可).

5.接下来到App.vue页面里修改底部footer标签
添加v-if="$store.state.showFooter"

vuex的基本使用

作用 :

它采用集中式存储管理应用的所有组件的状态。(统一管理所有组件中公用的数据)

组成:

state:管理所有的状态(数据)

getter:state 的计算属性

mutations:用来操作 state

用法 :

1.0 定义

// 在 store/index.js 中

export default new Vuex.Store ({state:{userInfo:’’}})

2.0 使用

// 在 .vue(组件) 中

// // 取值

this.$store.state.userInfo

// // 赋值

this.$store.state.userInfo={}

总结:

在 vuex 中,如果要给 vuex 中的数据赋值,不能直接得到 state 去赋值,这样不配合 vuex 设计规范

vuex - mapState 基本使用

它是 vuex 中 state 对应的一个辅助函数

mapState:可以用来简化 vuex 中 state 中属性的使用

步骤:

导入

import { mapState } from ’vuex’

定义

computed:{...mapState()}

使用

this.state中的属性名 === this.$store.state.state中的属性名

vuex - mutations 的使用

在 vuex 中,如果要给 state 中的属性赋值,建议大家借助 mutation 来赋值

步骤:

1.0 在 mutations 中定义赋值方法
// 在 store/index.js 中

export  default  new  Vuex.Store({

    state: { userInfo: ’ ’ },

    mutations: { setUserInfo ( state, payload ) {

            state.userInfo = payload

    }

}})

2.0 在组件中调用方法
// 在 .vue(组件) 中

 // 取值

this.$store.state.userInfo

 // 赋值

this.$store.commit(’setUserInfo’, data)

vuex - mapMutaions 基本使用

mapMutaions : 可能用来简化 vuex 中的 mutations 中方法的调用

步骤:

导入 mapMutations

import { mapMutaions } from ’vuex’

定义方法:

methods:{...mapMutations()}

使用方法:

this.setUserInfo(’abc’)

总结:

vuex:

state:管理状态

取值:

this.$store.state.xxx

...mapState()  或者  ...mapState({ myname: ’xxx’ })

mutaions

取值:

this.$store.commit(’xxx’, payload)

...mapMutations()  或者  ...mapMutations({ myname: ’xxx’ })

Vuex简单使用

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
如果一份数据需要在多个组件中使用,组件间传值又比较复杂,就可以使用vuex托管数据。

state选项: 定义状态(状态就是数据)。
mutations选项: 定义修改状态的方法(注意:这里面只能定义同步方法)。

$store: 返回的是当前项目中的全局状态对象。
commit()方法: 用于执行指定的mutations里面的方法。

在组件中,直接通过$store.state就可以获取到全局状态对象管理的状态数据,直接渲染到页面。

state选项: 定义状态(状态就是数据)。

通过 $store.state.数据名 使用。

getters选项: 定义计算属性。方法的参数是状态对象。

通过 $store.getters.属性名 使用计算属性。

mutations选项: 定义修改状态的方法(注意:这里的方法一般都是同步方法)。方法的第一个参数是状态对象,第二个参数是新值。

通过 commit() 方法,调用mutations里面的方法。

actions选项: 定义操作状态的方法(这里的方法可以定义异步方法)。
注意: actions里的方法最好不要直接操作state状态,而是通过调用mutations里面的方法去修改状态。所以,actions直接操作的是mutations。

通过 dispatch() 方法,调用actions里面定义的方法。

由于使用单一状态树,应用的所有状态会集中到一个比较大的对象。当应用变得非常复杂时,store 对象就有可能变得相当臃肿。
为了解决以上问题,Vuex 允许我们将 store 分割成模块(module)。每个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块。

namespaced属性: 默认情况下,action、mutation 和 getter 是注册在全局命名空间的。通过设置namespaced属性为true,将action、mutation 和 getter全部注册到私有命名空间中。

要从私有模块中获取数据,方式是: $store.state.模块名称.模块的数据

要从私有模块中获取计算属性,方式是: $store.getters

调用私有模块里面的mutations定义的方法,方式是: $store.commit(’模块名/方法名’,新值)

调用私有模块里面的actions定义的方法,方式是: $store.dispatch(’模块名/方法名’,新值)

直接在模板中使用全局状态管理数据,表达式会写的很长。所以可以使用计算属性。

通过映射函数mapState、mapGetters、mapActions、mapMutations,可以将vuex.store中的属性映射到vue实例身上,这样在vue实例中就能访问vuex.store中的属性了,便于操作vuex.store。

如果vuex里面state的数据名称 跟 页面中的计算属性名称相同,就可以使用 mapState 映射函数,自动生成页面中的计算属性。
如果vuex里面getters的数据名称 跟 页面中的计算属性名称相同,就可以使用 mapGetters 映射函数,自动生成页面中的计算属性。
注意: 如果要映射模块里面的state/getters,函数的第一个参数设置为模块的名称。

如果定义的方法名跟全局管理对象中mutations里面的方法名相同,并且定义的方法会带有一个参数,通过参数传递数据。满足该规则,就可以使用 mapMutations 映射函数生成方法。
如果定义的方法名跟全局管理对象中actions里面的方法名相同,并且定义的方法会带有一个参数,通过参数传递数据。满足该规则,就可以使用 mapActions 映射函数生成方法。
注意: 如果要映射私有模块中mutations/actions里面的方法,函数的第一个参数设置为模块的名称。

以上就是我们为大家找到的有关“vuex详解和用法(Venx使用指南(精简版))”的所有内容了,希望可以帮助到你。如果对我们网站的其他内容感兴趣请持续关注本站。

vuex详解和用法(Venx使用指南(精简版))

本文编辑:admin

更多文章:


title是什么意思?抬头和title有关系吗

title是什么意思?抬头和title有关系吗

本篇文章给大家谈谈title,以及title是什么意思对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录title是什么意思抬头和title有关系吗英语caption和title都当【标题】的意思的区别editplus怎么写汇编

2025年10月7日 07:15

echart是啥(“echarts”翻译成中文是什么)

echart是啥(“echarts”翻译成中文是什么)

大家好,今天小编来为大家解答以下的问题,关于echart是啥,“echarts”翻译成中文是什么这个很多人还不知道,现在让我们一起来看看吧!本文目录“echarts”翻译成中文是什么echarts.js是什么帆软报表和 echarts什么意

2026年3月29日 23:15

js写入本地json文件(vue项目导入本地json文件的方法)

js写入本地json文件(vue项目导入本地json文件的方法)

这篇文章给大家聊聊关于js写入本地json文件,以及vue项目导入本地json文件的方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录vue项目导入本地json文件的方法js创建json数据并保存vue配置请求本地json数

2026年4月12日 14:00

java分为哪几种(java各种类都是哪些)

java分为哪几种(java各种类都是哪些)

各位老铁们好,相信很多人对java分为哪几种都不是特别的了解,因此呢,今天就来为大家分享下关于java分为哪几种以及java各种类都是哪些的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录java各种类都是哪些ja

2025年12月12日 13:45

success的几种用法(success用法固定搭配是什么)

success的几种用法(success用法固定搭配是什么)

各位老铁们好,相信很多人对success的几种用法都不是特别的了解,因此呢,今天就来为大家分享下关于success的几种用法以及success用法固定搭配是什么的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录su

2026年3月22日 03:45

txt编程简单程序(如何用txt文档做关机程序)

txt编程简单程序(如何用txt文档做关机程序)

今天给各位分享如何用txt文档做关机程序的知识,其中也会对如何用txt文档做关机程序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录如何用txt文档做关机程序利用C#编写一段读写TXT文本的小程序如何编写程序代

2026年1月22日 08:30

论坛代码html(Discuz网址后缀怎么改成html)

论坛代码html(Discuz网址后缀怎么改成html)

各位老铁们,大家好,今天由我来为大家分享论坛代码html,以及Discuz网址后缀怎么改成html的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录D

2026年9月2日 20:30

c语言基础源代码(C语言源代码是什么)

c语言基础源代码(C语言源代码是什么)

其实c语言基础源代码的问题并不复杂,但是又很多的朋友都不太了解C语言源代码是什么,因此呢,今天小编就来为大家分享c语言基础源代码的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录C语言源代码是什么c语言编程,要源代

2025年12月30日 12:30

qq代码公安局已加入该群(QQ突然发消息“公安局已加入该会话”怎么办)

qq代码公安局已加入该群(QQ突然发消息“公安局已加入该会话”怎么办)

各位老铁们,大家好,今天由我来为大家分享qq代码公安局已加入该群,以及QQ突然发消息“公安局已加入该会话”怎么办的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始

2026年5月27日 01:00

php平台版本建议64(最低要求什么版本的PHP)

php平台版本建议64(最低要求什么版本的PHP)

这篇文章给大家聊聊关于php平台版本建议64,以及最低要求什么版本的PHP对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录最低要求什么版本的PHPxampp v5.6.28支持 64位系统吗怎样选择PHP的版本PHP后面的X8

2026年1月5日 17:30

网站下载的软件(手机从网站上下载的软件一般下到哪个文件夹里)

网站下载的软件(手机从网站上下载的软件一般下到哪个文件夹里)

今天给各位分享手机从网站上下载的软件一般下到哪个文件夹里的知识,其中也会对手机从网站上下载的软件一般下到哪个文件夹里进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录手机从网站上下载的软件一般下到哪个文件夹里免费

2025年7月28日 05:15

dz论坛源码出售(请问DZ论坛中这样的帖子是怎么设置的)

dz论坛源码出售(请问DZ论坛中这样的帖子是怎么设置的)

各位老铁们,大家好,今天由我来为大家分享dz论坛源码出售,以及请问DZ论坛中这样的帖子是怎么设置的的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录请

2026年6月4日 12:15

mysql数据库怎么初始化(初始化腾讯云mysql数据库时支持什么格式)

mysql数据库怎么初始化(初始化腾讯云mysql数据库时支持什么格式)

本篇文章给大家谈谈mysql数据库怎么初始化,以及初始化腾讯云mysql数据库时支持什么格式对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录初始化腾讯云mysql数据库时支持什么格式如何初始化MySQL数据库springsid

2025年8月3日 05:30

c语言整型指针(C语言 整数型指针作为参数传递的问题)

c语言整型指针(C语言 整数型指针作为参数传递的问题)

大家好,c语言整型指针相信很多的网友都不是很明白,包括C语言 整数型指针作为参数传递的问题也是一样,不过没有关系,接下来就来为大家分享关于c语言整型指针和C语言 整数型指针作为参数传递的问题的一些知识点,大家可以关注收藏,免得下次来找不到哦

2025年7月16日 08:00

hashset类添加元素的方法(java 怎么给set赋值)

hashset类添加元素的方法(java 怎么给set赋值)

大家好,关于hashset类添加元素的方法很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于java 怎么给set赋值的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮

2026年5月1日 10:00

英国首相宣布(英国首相约翰逊辟谣将入职中国钻石公司,事情的真相到底是什么)

英国首相宣布(英国首相约翰逊辟谣将入职中国钻石公司,事情的真相到底是什么)

今天给各位分享英国首相约翰逊辟谣将入职中国钻石公司,事情的真相到底是什么的知识,其中也会对英国首相约翰逊辟谣将入职中国钻石公司,事情的真相到底是什么进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录英国首相约翰逊

2025年7月16日 21:00

sutool插件(怎么用Sketchup较快的制作玻璃的分隔杆,就是一大片玻璃幕墙上的分隔杆)

sutool插件(怎么用Sketchup较快的制作玻璃的分隔杆,就是一大片玻璃幕墙上的分隔杆)

“sutool插件”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看sutool插件(怎么用Sketchup较快的制作玻璃的分隔杆,就是一大片玻璃幕墙上的分隔杆)!本文目录怎么用Sketchup较快的制作玻璃的分隔杆,就是一大

2025年12月23日 01:30

工作证模板制作(工作证怎么批量制作)

工作证模板制作(工作证怎么批量制作)

各位老铁们好,相信很多人对工作证模板制作都不是特别的了解,因此呢,今天就来为大家分享下关于工作证模板制作以及工作证怎么批量制作的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录工作证怎么批量制作excel工作证怎么

2025年11月4日 15:30

crucial同义词替换(请问雅思阅读同义词的替换有什么)

crucial同义词替换(请问雅思阅读同义词的替换有什么)

各位老铁们好,相信很多人对crucial同义词替换都不是特别的了解,因此呢,今天就来为大家分享下关于crucial同义词替换以及请问雅思阅读同义词的替换有什么的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录请问雅

2026年7月14日 10:45

绘图仪属于什么设备(绘图仪是计算机的输入设备吗,还有鼠标器是计算机的输入设备吗)

绘图仪属于什么设备(绘图仪是计算机的输入设备吗,还有鼠标器是计算机的输入设备吗)

“绘图仪属于什么设备”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看绘图仪属于什么设备(绘图仪是计算机的输入设备吗,还有鼠标器是计算机的输入设备吗)!本文目录绘图仪是计算机的输入设备吗,还有鼠标器是计算机的输入设备吗绘图仪属

2025年9月17日 00:45

近期文章

char ch用法(c语言char ch)
2026-09-24 18:45:02
本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索