位置: IT常识 - 正文

【Vue全家桶】Vuex状态管理(vue全家桶介绍)

编辑:rootadmin
【Vue全家桶】Vuex状态管理

推荐整理分享【Vue全家桶】Vuex状态管理(vue全家桶介绍),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue全家桶插件有哪些,vue全家桶介绍,vue全家桶教程,vue和vue全家桶区别,vue2.0全家桶,vue全家桶教程,vue2.0全家桶,vuex全家桶,内容如对您有帮助,希望把文章链接给更多的朋友!

🍳作者:贤蛋大眼萌,一名很普通但不想普通的程序媛\color{#FF0000}{贤蛋 大眼萌 ,一名很普通但不想普通的程序媛}贤蛋大眼萌,一名很普通但不想普通的程序媛🤳

🙊语录:多一些不为什么的坚持\color{#0000FF}{多一些不为什么的坚持}多一些不为什么的坚持

📝本文章收录于专栏:Vue框架

💭眼过千遍不如手锤一遍:推荐一款模拟面试,斩获大厂offer,程序员的必备刷题平台−−牛客网\color{#ff7f50}{眼过千遍不如手锤一遍:推荐一款模拟面试,斩获大厂offer,程序员的必备刷题平台--牛客网}眼过千遍不如手锤一遍:推荐一款模拟面试,斩获大厂offer,程序员的必备刷题平台−−牛客网

👉🏻点击跳转刷题网免费注册学习

【Vue全家桶】Vuex状态管理🚀 1. 什么是状态管理⏰ Vuex的使用🦴 单一状态树 和 mapState 辅助函数1. 单一状态树2. mapState 辅助函数🍦 getters 的基本使用1. getter 的使用2. getters 第二个参数3. getters 的返回函数 (了解)4. mapGetters 的辅助函数🍧 mutation 基本使用1. mutation 携带数据2. mutation 重要原则🥄 actions 的基本使用1. actions 的分发操作2. actions 的辅助函数3. actions 的异步操作🥢 module 的基本使用1. module 的局部状态2. module 的命名空间3. module 修改或派发根组件🚀 1. 什么是状态管理

在开发中,我们会的应用程序需要处理各种各样的数据,这些 数据需要保存在我们应用程序中的某一个位置,对于这些数据 的管理我们就称之为是状态管理

Vuex 的状态管理的基本实现(这里采用官方的图解)

⏰ Vuex的使用安装vuexnpm install vuex

基本使用 :

store本质上是一个容器 --> 存着大部分应用中的状态。

vuex 的状态存储是响应式的,当store中的状态发生变化时,那么响应的组件也会被更新。

// main.jsimport { createApp } from "vue"import App from "./App.vue"import store from "./store"const app = createApp(App)app.user(store)app.mount("#app")// src/store/index.jsimport { createStore } from "vuex"const store = createStore({ state: () => ({ counter: 100 }), mutations: { increment(state) { state.counter++ } }})export default store//App.vue<template> <div class="app"> <!-- store 中的counter --> <h2>方式一:模板:App当前计数: {{$store.state.counter}}</h2> <h2>方式二:optionsAPI中的computed使用: {{storeCounter}}</h2> <h2>方式三:在compositionAPI中setup函数使用:{{counter}}</h2> <button @click="increment">+1</button> </div></template><script>export default { computed: { storeCounter () { return this.store.state.counter } }}</script><script setup>import { toRefs } from 'vue'import { useStore } from 'vuex'const store = useStore()const { counter } = toRefs(store.state)function increment () { store.commit("increment")}</script><style scoped></style>🦴 单一状态树 和 mapState 辅助函数1. 单一状态树

意味着每一个应用就只包含一个 store实例

优点:如果状态信息包含了多个 store 实例对象,那么之后维护和管理起来就会比较麻烦。单一状态树是我们最直接的方式找到某一个状态的片段,所以维护起来也比较方便

2. mapState 辅助函数

​ 如果需要获取多个状态的时候,可以使用 mapSate 辅助函数

这里有两种方式,分别是在optionsAPI 和 composition API中使用 mapState

🍦 getters 的基本使用1. getter 的使用

场景:当需要我们将store中的某些属性经过一些列的变化之后再使用,这个时候可以选择使用getters

2. getters 第二个参数

在上述场景中,getters接受的第一个参数是state,getters 也可以接收第二个参数

3. getters 的返回函数 (了解)【Vue全家桶】Vuex状态管理(vue全家桶介绍)

getters中的函数本身,可以返回一个函数,那么在使用的地方相当于可以调用这个函数

4. mapGetters 的辅助函数

🍧 mutation 基本使用

改变vuex中的store的状态的唯一方法是提交mutation

注意:在pinia中是取消了mutation,后续会继续讲。搭配vue3的composition API会比vuex更好,所以这里使用 options API演示

1. mutation 携带数据

很多时候我们在提交mutation的时候会携带一些数据,这个时候可以这样使用

2. mutation 重要原则

mutation 必须是同步函数,即不允许使用异步函数(例如发送网络请求)

🥄 actions 的基本使用

Action类似于mutation,不同在于:

Action提交的是mutation,而不是直接变更状态;Action可以包含任意异步操作;

参数context:

context是一个和store实例均有相同方法和属性的context对象;可以从其中获取到commit方法来提交一个mutation,或者通过 context.state 和 context.getters 来获取 state 和 getters;1. actions 的分发操作

2. actions 的辅助函数

3. actions 的异步操作

🥢 module 的基本使用

​ 由于使用单一状态树,应用的所有状态会集中到一个比较大的对象,当应用变得非常复杂时,store 对象就有可能变得相当臃肿。所以Vuex允许我们将 store 分割成模块(module)。

​ 每个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块

1. module 的局部状态

对于模块内部的 mutation 和 getter,接收的第一个参数是模块的局部状态对象。

2. module 的命名空间

​ 默认情况下,模块内部的action和mutation仍然是注册在全局的命名空间中的。所以命名不可以重复

​ 如果我们希望模块具有更高的封装度和复用性,可以添加 namespaced: true 的方式使其成为带命名空间的模块: 当模块被注册后,它的所有 getter、action 及 mutation 都会自动根据模块注册的路径调整命名。

3. module 修改或派发根组件

​ 在action中修改root中的state,那么有如下的方式:

PS:

求知无坦途,学问无捷径。👣一步一个脚印,你走过的路,每一步都算数。\color{#ff7f50}{一步一个脚印,你走过的路,每一步都算数。}一步一个脚印,你走过的路,每一步都算数。 每一次进步都是对自己努力的肯定。如果读了文章有收获,不如一起来学习,一起进步吧。传送门🚪刷题神器

本文链接地址:https://www.jiuchutong.com/zhishi/297791.html 转载请保留说明!

上一篇:Spring Boot 3.0系列【19】核心特性篇之自定义Starter启动器(spring boot 2.3.0)

下一篇:Bootstrap——制作个人简历网页、工具类【边框(添加、删除、颜色、圆角)、清除浮动、颜色(文本、链接、背景)、display属性、浮动、定位、文本对齐】(bootstrap-)

  • 荣耀x10和华为畅享z的区别(荣耀x10和华为畅享10plus哪个好)

    荣耀x10和华为畅享z的区别(荣耀x10和华为畅享10plus哪个好)

  • 华为nova7微信怎么双开(华为nova7微信怎么加密码锁)

    华为nova7微信怎么双开(华为nova7微信怎么加密码锁)

  • 苹果11微信如何变成黑色呢(苹果11微信如何开美颜)

    苹果11微信如何变成黑色呢(苹果11微信如何开美颜)

  • iphone xr xs区别(apple xr xs区别)

    iphone xr xs区别(apple xr xs区别)

  • 华为电脑打不开了(华为电脑打不开爱奇艺)

    华为电脑打不开了(华为电脑打不开爱奇艺)

  • backspace键是什么意思(backspace键是什么意思失灵)

    backspace键是什么意思(backspace键是什么意思失灵)

  • airpods2能用5v2a的充电头吗(5v2a可以给airpods pro充电吗)

    airpods2能用5v2a的充电头吗(5v2a可以给airpods pro充电吗)

  • 抖音什么叫养号(抖音里什么叫养号)

    抖音什么叫养号(抖音里什么叫养号)

  • win7需要装独立显卡吗(win7有必要安装更新吗)

    win7需要装独立显卡吗(win7有必要安装更新吗)

  • b365主板和z390区别(b365主板和z390哪个好)

    b365主板和z390区别(b365主板和z390哪个好)

  • 5v6a是多少瓦(5v3a是多少瓦)

    5v6a是多少瓦(5v3a是多少瓦)

  • 华为P40重量(华为p40pro重量)

    华为P40重量(华为p40pro重量)

  • 红米m1908c3ic是什么型号(红米m1908c3ke型号)

    红米m1908c3ic是什么型号(红米m1908c3ke型号)

  • qq船的标志怎么消失(qq船的标志怎么换人)

    qq船的标志怎么消失(qq船的标志怎么换人)

  • 硬盘格式化是什么意思(硬盘格式化什么格式才能兼容苹果电脑)

    硬盘格式化是什么意思(硬盘格式化什么格式才能兼容苹果电脑)

  • ps怎么给照片加白边(ps怎么给照片加暗角)

    ps怎么给照片加白边(ps怎么给照片加暗角)

  • 手机怎么给照片加黑边(手机怎么给照片加贴纸)

    手机怎么给照片加黑边(手机怎么给照片加贴纸)

  • 华为mate30pro怎么设置来电头像(华为mate30pro怎么开空调)

    华为mate30pro怎么设置来电头像(华为mate30pro怎么开空调)

  • 苹果11应用与数据在哪里(苹果11应用数据在哪)

    苹果11应用与数据在哪里(苹果11应用数据在哪)

  • 苹果x像素怎么调清晰(苹果x像素怎么调白)

    苹果x像素怎么调清晰(苹果x像素怎么调白)

  • 爱奇艺怎么扫描二维码登录(爱奇艺怎么扫描二维码)

    爱奇艺怎么扫描二维码登录(爱奇艺怎么扫描二维码)

  • ios13支持3d touch吗(ios13支持哪几款机型)

    ios13支持3d touch吗(ios13支持哪几款机型)

  • vivoy93怎么关机开机(vivo y93怎么强制关机)

    vivoy93怎么关机开机(vivo y93怎么强制关机)

  • 微信视频中再有人视频会有提示么(微信视频时再有视频进来)

    微信视频中再有人视频会有提示么(微信视频时再有视频进来)

  • wps勾怎么打出来(wps勾怎么打出来手机)

    wps勾怎么打出来(wps勾怎么打出来手机)

  • 监控画面怎么切换位置(监控画面怎么切换电视)

    监控画面怎么切换位置(监控画面怎么切换电视)

  • 中级财务会计计算分析题
  • 收到税费返还是什么现金流量
  • 专票不抵扣认证什么意思
  • 公司之间往来款需要开收据吗
  • 印花税不计入应交税科目吗?
  • 公司业务章需要报备吗
  • 销售额营业收入怎么填
  • 应税职工福利费在应纳税所得额里面吗
  • 国税征收项目有哪些
  • 车辆过户需要交费吗
  • 年度销售返利的计算方法
  • 支付员工一次性补偿呈批件
  • 增值税普票跨月怎么冲红
  • 注册个人独资企业和有限公司哪个好
  • 房地产企业所得税预缴
  • 建筑企业的职工由于不服管理违反规章制度
  • 停车场如何申领车牌号
  • 其他收益小企业会计报表没有怎么填
  • 应收账款周转次数计算方法
  • 简易征收发票认证了之后怎么处理
  • 大额转账人行审核通过
  • 教培机构房租占比
  • 客户年会赞助是公司账户转嘛
  • 什么是城市维护费
  • 销售净利率如何分析出来
  • 怎么找回被册的软件
  • 总公司人员的工资子公司可以发吗
  • key是什么文档
  • 公积金可以支付二手房首付款吗
  • 房产无偿过户给朋友能让他还吗?
  • 福利企业的税收怎么算
  • PHP:imagefilledellipse()的用法_GD库图像处理函数
  • 报销差旅费退回余款填什么凭证
  • 财务负责人和法人哪个责任大
  • php缩进
  • 旅客运输进项抵扣税率
  • discuzq是个做什么
  • 招待费发票怎么做分录
  • mysql基本语法
  • ubuntu下编译安装opencv
  • 企业的净资产都有哪些
  • 合伙企业需要做工商吗
  • 免税黄金什么意思
  • 长期股权投资减值准备是什么科目
  • 发票税额不全能抵扣吗
  • 微信收款会计分录怎么写
  • 公司购买银行理财产品收益交什么税
  • 企业在银行的信用卡
  • 企业法人个人贷款企业承担吧?
  • 我国税收税类中的流转税
  • 小规模企业应交税费分录
  • 报销餐费属于什么费用
  • 应收账款平均余额公式
  • mysql忘记了初始密码
  • solaris init 0
  • win7设置繁体字
  • 预览版与正式版
  • WinXP系统能上qq但打不开网页原因分析及解决方法
  • ubuntu crontab
  • fedora打不开
  • win8界面什么样
  • postgres.exe是什么进程 postgres进程查询
  • win8.1语言设置
  • linux备份的文件bak如何恢复
  • 微软发布更新的时间每月
  • linux系统怎么关闭137端口
  • linux安装与部署
  • shell程序中定义的函数能不能有参数
  • python让用户选择
  • jquery中遍历指定的对象和数组是哪个方法
  • python装饰器初探(推荐)
  • Java之CyclicBarrier使用
  • 利用jQuery实现一个时间无法显示
  • 安卓权限管理app
  • 电子税务局网页版登录入口官网
  • 江苏国家税务机关电话
  • 国税总局网
  • 第一次去税务局领发票
  • 江苏税务个税查询
  • 文化传媒公司能卖多少钱
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设