六、Vuex

六、Vuex

6.1 Vuex是什么

  • 概念:专门在 Vue 中实现集中式状态(数据)管理的一个 Vue 插件,对 vue 应 用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方 式,且适用于任意组件间通信。
  • Github 地址: https://github.com/vuejs/vuex

6.1.2 什么时候使用 Vue

  1. 多个组件依赖于同一状态
  2. 来自不同组件的行为需要变更同一状态

6.1.3 案例

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.1.4 Vuex 工作原理图

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.2 vuex 核心概念和 API

6.2.1 state

  1. vuex 管理的状态对象

  2. 它应该是唯一的

  3. 示例代码:

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.2.3 action

  1. 值为一个对象,包含多个响应用户动作的回调函数

  2. 通过 commit( )来触发 mutation 中函数的调用, 间接更新 state

  3. 如何触发 actions 中的回调?

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  4. 可以包含异步代码(定时器, ajax 等等

  5. 示例代码:

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.2.3 mutations

  1. 值是一个对象,包含多个直接更新 state 的方

  2. .谁能调用 mutations 中的方法?如何调用

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  3. mutations 中方法的特点:不能写异步代码、只能单纯的操作 stat

  4. 示例代码:

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.3 四个map方法的使用

6.3.1 mapState方法

  • 用于帮我们映射state中的数据为计算属性。
 computed:{//借助mapState生成计算属性,从state中读取数据。(对象写法)...mapState({sum:'sum',school:'school',student:'student'}),//借助mapState生成计算属性,从state中读取数据。(数组写法)...mapState(["school","sum","student"]),}

6.3.2 mapGetters方法

  • 用于帮助我们映射getters中的数据为计算属性
 computed:{//借助mapGetters生成计算属性,从state中读取数据。(对象写法)...mapGetters({bigSum:'bigSum'}),//借助mapGetters生成计算属性,从state中读取数据。(数组写法)...mapGetters(["bigSum"])}

6.3.3 mapActions方法

  • 用于帮助我们生成与 actions 对话的方法,即包含$store.dispatch(xxx) 的函数
methods:{//借助mapActions生成对应的方法,方法中会调用 dispatch 去联系 actions (对象写法)...mapActions({incrementOdd:'incrementOdd',incrementWait:'incrementWait'}),//借助mapActions生成对应的方法,方法中会调用 dispatch 去联系 actions (数组写法)...mapActions(['incrementOdd','incrementWait'])},

6.3.4 mapMutations方法

  • 用于帮助我们生成与mutations对话的方法,即:包含$.store.commit(xxx)的函数
methods:{//借助mapMutations生成对应的方法,方法中会调用commit去联系mutations(对象写法)...mapMutations({decrement:'DECREMENT',increment:'INCREMENT'}),//借助mapMutations生成对应的方法,方法中会调用commit去联系mutations(数组写法)...mapMutations(['DECREMENT','INCREMENT']),},

mapActions与mapMutations使用时,若需要传递参数需要:在模板中绑定事件时传递好参数,否则参数是事件参数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/701317.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3获取环境变量import.meta.env

vitevue的时候环境变量的获取方式变成如下: console.log(import.meta.env)

MongoDB之角色与权限及创建用户与授权操作详解

MongoDB之角色与权限及创建用户与授权操作详解 文章目录 MongoDB之角色与权限及创建用户与授权操作详解1. 角色与权限1. 角色分类2. 权限说明 2. MongDB创建用户及删除用户1. 创建用户2. 查看用户信息3. 修改用户密码 3. db.runCommand创建用户与授权1. 创建用户2. 更改用户权限…

ARMv8-AArch64 的异常处理模型详解之异常向量表vector tables

目录 一,AArch64 异常向量表 二,栈指针以及SP寄存器的选择 三,从异常返回 一,AArch64 异常向量表 异常向量表(vector tables)是一组存放于普通内存(normal memory)空间的&#xf…

【机器学习科学库】全md文档笔记:Jupyter Notebook和Matplotlib使用(已分享,附代码)

本系列文章md笔记(已分享)主要讨论人工智能相关知识。主要内容包括,了解机器学习定义以及应用场景,掌握机器学习基础环境的安装和使用,掌握利用常用的科学计算库对数据进行展示、分析,学会使用jupyter note…

vue从flask获取数据并显示

记录一个前后端分离遇到的问题,即vue前端从flask后端获取数据。具体描述如下:flask只负责连接数据库并获取数据库的数据,并返回给前端vue;vue则需要获取后端返回的数据并显示。 方法如下,分别用一个vue组件和一个flas…

跟着爱学习的饲养员做题记录之两个数之和,力扣1

题目要求在给定的整数数组中找到两个数的索引,使它们的和等于一个特定的目标值。 import java.util.Hashtable;/*** 开发人员: * 时间:2024/2/24*/ //两数之和 public class leecode1 {public static void main(String[] args) {int[] nums …

npm install报错,如何解决

npm install报错可能有多种原因,以下是一些常见的解决方法: 检查网络连接:确保你的网络连接正常,有时候网络不稳定会导致npm install失败。 清除npm缓存:运行命令npm cache clean --force清除npm的缓存,然…

【网站项目】488服装店销售管理系统

🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…

【CMake】(9) 日志

message 函数被用于向用户显示信息。这个函数可以在 CMake 运行时输出各种级别的消息,包括状态消息、警告、错误等。 message 函数的语法 message([<mode>] "message to display" ...)<mode> 可选的参数,指定消息的类型。可能的值包括: STATUS: 显示…

迷你世界之建筑生成球体

local x0,y0,z00,30,0--起点坐标 local dx,dy,dz60,60,60--外切长方体横纵竖长度 local count,all0,dx*dy*dz--计数&#xff0c;总数 local m,k10000,0--单次生成方块数&#xff0c;无用循环值 local x,y,z0,0,0--当前坐标 local demath.random(2,19)/2 local id600--方块…

评估测试接口软件与网站的使用方法及优劣势比较

评估测试接口软件与网站的使用方法及优劣势比较 导言 在软件开发和测试过程中&#xff0c;对接口进行测试是至关重要的一步。测试接口的软件和网站提供了各种工具和方法&#xff0c;以便开发人员和测试人员能够有效地测试他们的应用程序接口。本文将探讨几种常见的测试接口软…

小米标准模组+MCU 快速上手开发(二)——之模组串口调试

小米标准模组+MCU 开发笔记之固件调试 背景技术名词简介● 小米IoT开发者平台● 小米IoT 模组● 固件● OTA● CRC32固件双串口调试● MHCWB6S-IB 模组资料下载● MHCWB6S-IB 模组管脚图● 上电调试背景 小米标准模组+MCU的开发过程中,由于部分官方资料较为古早,踩了很多的坑…

单片机上电后不工作,应该检查什么

当单片机上电后不工作&#xff0c;应该按照以下步骤进行检查&#xff1a; 1.电源检查。使用电压表测量单片机的电源电压是否正常&#xff0c;确保电压在规定的范围内&#xff0c;如常见的5V。 2.复位检查。检查复位引脚的电压是否正常&#xff0c;在单片机接通电源时&#xff…

中兴通讯携吉林移动迈向5G-A新阶段,完成3CC技术应用

日前&#xff0c;中兴通讯携手中国移动吉林移动分公司&#xff0c;在5G-A领域取得新突破。具体来说&#xff0c;双方基于MTK芯片M80终端&#xff0c;完成了5G-A三载波聚合试点&#xff0c;实测下行速率达到理论峰值4.25Gbps&#xff0c;相比2.6G单载波速率提升2.5倍。如此成绩&…

【JavaScript】减少 DOM 操作

文章目录 1. 了解DOM操作的性能影响2. 批量操作和缓存选择器2.1 批量操作2.2 缓存选择器 3. 使用事件委托4. 缓存计算值5. 合理使用样式操作6. 使用文档碎片和克隆节点7. 总结 在Web开发中&#xff0c;对DOM&#xff08;Document Object Model&#xff09;的频繁操作可能导致性…

C++面试题精选与解析

C面试题精选与解析 一、基础与语法 请问C中的指针和引用有什么区别&#xff1f; 指针是一个变量&#xff0c;存储的是另一个变量的内存地址。指针可以被重新赋值以指向另一个不同的对象。而引用是某个变量的别名&#xff0c;一旦引用被初始化为一个变量&#xff0c;就不能改变…

LLM权重量化

LLM权重量化 浮点表示的背景知识Nave 8位量化使用LLM.int8() 进行8位量化结论References 大型语言模型(llm)以其广泛的计算需求而闻名。通常&#xff0c;模型的大小是通过将**参数的数量(大小)乘以这些值的精度(数据类型)**来计算的。为了节省内存&#xff0c;可以通过称为量化…

cmake 项目。qt5升级 qt6 报错 error: “Qt requires a C++17 compiler 已解决

日常项目开发中。需要对qt5升级到qt6 做cmake兼容配置&#xff0c;在编译中发现&#xff0c;有c 编译环境 报错 2>C:\Qt\6.5.3\msvc2019_64\include\QtCore/qcompilerdetection.h(1226,1): fatal error C1189: #error: "Qt requires a C17 compiler, and a suitable …

了解 JavaScript 中的重放攻击和复现攻击

在网络安全领域&#xff0c;重放攻击&#xff08;Replay Attack&#xff09;和复现攻击&#xff08;Playback Attack&#xff09;是一些可能导致安全漏洞的攻击形式。这两种攻击类型涉及在通信过程中再次发送已经捕获的数据&#xff0c;以达到欺骗系统的目的。本文将介绍 JavaS…

企业微信怎么变更企业名称?

企业微信变更主体有什么作用&#xff1f;现在很多公司都用企业微信来加客户&#xff0c;有时候辛辛苦苦积累了很多客户&#xff0c;但是公司却因为各种各样的原因需要注销&#xff0c;那么就需要通过企业微信变更主体的方法&#xff0c;把企业微信绑定的公司更改为最新的。企业…