动力节点Vue笔记第五章vuex

Vue笔记第六章路由route【动力节点】 传统web应用,又叫做多页面web应用:核心是一个web站点由多个HTML页面组成,点击时完成页面的切换,因为是切换到新的HTML页面上,所以当前页面会全部刷新。整个网站只有一个HTM页面,点击时只是完成当前页面中的切换。属于页面局部刷新。单页应用程序 (SPA) 是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。浏览器一开始会加载必需的HTML、CSS和JavaScript,所有的操作都在这张页面上完成,都由JavaScript来控制。单页面的跳转。 阅读详情

5 Vuex

5.1 vuex概述

  1. vuex是实现数据集中式状态管理的插件。数据由vuex统一管理。其它组件都去使用vuex中的数据。只要有其中一个组件去修改了这个共享的数据,其它组件会同步更新。一定要注意:全局事件总线和vuex插件的区别:
    1. 全局事件总线关注点:组件和组件之间数据如何传递,一个绑定on,一个触发on,一个触发on,一个触发emit。数据实际上还是在局部的组件当中,并没有真正的让数据共享。只是数据传来传去。

  1. vuex插件的关注点:共享数据本身就在vuex上。其中任何一个组件去操作这个数据,其它组件都会同步更新。是真正意义的数据共享。

  1. 使用vuex的场景是:
    1. 多个组件之间依赖于同一状态。来自不同组件的行为需要变更同一状态。

5.2 vuex环境搭建

  1. 安装vuex
    1. vue2安装vuex3版本
      1. npm i vuex@3
    2. vue3安装vuex4版本
      1. npm i vuex@4
  2. 创建目录和js文件(目录和文件名不是必须叫这个)
    1. 目录:vuex
    2. js文件:store.js
  3. 在store.js文件中创建核心store对象,并暴露

  1. 在main.js文件中关联store,这一步很重要,完成这一步之后,所有的vm和vc对象上会多一个$store属性

5.3 vuex实现一个最简单的案例

  1. 使用vuex实现一个点我加1的简单功能。


  1. 为什么这么折腾呢?
    1. 通过以上案例,可以看出数据num可以被多个组件共享。(vuex可以管理多个组件共享的数据)
    2. 通过on和on和on和emit这种全局事件总线不好吗?可以。但如果组件多的话,并且涉及到读和写的操作会导致混乱。
  2. actions中的回调函数,参数context
    1. 如果业务逻辑非常负责,需要多个actions中的方法联合起来才能完成,可以在回调函数中使用context继续调用dispatch方法触发下一个action方法的执行。

5.4 vuex工作原理



如果业务逻辑非常简单,也不需要发送AJAX请求的话,可以不调用dispatch方法,直接调用commit方法也是可以的。

5.5 多组件数据共享

实现以下案例:

5.6 getters配置项

  1. 如果想将state中的数据进行加工计算,并且这个计算逻辑复杂,而且要在多个位置使用,建议使用getters配置项。
  2. 怎么用?
    1. 类似于Vue当中的:data和computed的关系。

5.7 mapState和mapGetters的使用(优化计算属性)

  1. 组件中在使用state上的数据和getters上的数据时,都有固定的前缀:

{{**this.KaTeX parse error: Expected 'EOF', got '}' at position 19: …re.state.**name}̲} {{**this.store.getters.**reverseName}}
使用mapState和mapGetters进行名称映射,可以简化以上的写法。

  1. 使用mapState和mapGetters的前提是先引入
    1. import {mapState, mapGetters} from ‘vuex’
  2. mapState如何使用,在computed当中使用ES6的语法
    1. 第一种方式:对象形式
      1. …mapState({name:’name’})
    2. 第二种方式:数组形式
      1. …mapState([‘name’])
    3. 插值语法就可以修改为:{{name}}
  3. mapGetters如何使用,在computed当中使用ES6的语法
    1. 第一种方式:对象形式
      1. …mapGetters({reverseName:’reverseName’})
    2. 第二种方式:数组形式
      1. …mapGetters([‘reverseName’])
    3. 插值语法就可以修改为:{{reverseName}}

5.8 mapMutations和mapActions的使用(优化methods)

import {mapMutations, mapActions} from ‘vuex’
methods : {
// 对象写法
…mapActions({add:’plusOne’,reverseName:’reverseName’})
// 数组写法(前提是:保证methods中的方法名和actions中的方法名一致)
…mapActions([‘plusOne’, ‘reverseName’])
}

5.9 vuex的模块化开发

5.9.1 未使用mapXxxx的模块化开发

a模块

b模块

c模块

在store.js文件中引入各个模块

A组件

b组件

将A组件和B组件在App组件中注册

5.9.2 使用mapXxxx的模块化开发

a模块

b模块

在store.js中引入a和b模块

A组件

B组件

在APP组件中注册A和B组件

当然,在action中也可以发送AJAX请求:

动力节点Vue笔记第五章Vuex on,一个触发。 阅读详情

相关推荐

动力节点老杜Vue框架教程【五】Vuex

vuex是实现数据集中式状态管理的插件。数据由vuex统一管理。其它组件都去使用vuex中的数据。只要有其中一个组件去修改了这个共享的数据,其它组件会同步更新。一定要注意:全局事件总线和vuex插件的区别:全局事件总线关注点:组件和组件之间数据如何传递,一个绑定on,一个触发on,一个触发on,一个触发emit。数据实际上还是在局部的组件当中,并没有真正的让数据共享。只是数据传来传去。vuex插件的关注点:共享数据本身就在vuex上。其中任何一个组件去操作这个数据,其它组件都会同步更新。

2301_76637473的博客 240

七种常见的排序算法主要原理(插入排序,选择排序,交换排序,归并排序,基数排序,快速排序,冒泡排序)

排序算法:插入排序,选择排序,交换排序,归并排序,基数排序,快速排序,冒泡排序 排序算法:基数排序,冒泡排序,快速排序,插入排序,选择排序,希尔排序,归并排序 基数排序:按照位数来进行排序,从个位开始排序,首先建立一个二维数组,列的长度为10,接着按个位相同放入对应的列当中, 然后取出,接着按照十位的情况进行排序,直到所有的位数全部排完为止。 核心思想:从优先级最小的地方开始排序,逐步到优先级最高的地方,例如,十位大于个位,如果十位在前,那么不管个位如何,十位都在前面 这就是基数排序

weixin_42346671的博客 465

老杜Vue实战教程完整版笔记(五)Vuex

接上篇文章,分享动力节点老杜全新版Vue教程笔记 如果业务逻辑非常简单,也不需要发送AJAX请求的话,可以不调用dispatch方法,直接调用commit方法也是可以的。实现以下案例: {{**this.KaTeX parse error: Expected 'EOF', got '}' at position 19: …re.state.**name}̲} {{**this.store.getters.**reverseName}} 使用mapState和mapGetters进行名称映射,可以简化以上

whgha的博客 374

[记录学习]自学动力节点老杜Spring6笔记_01

动力节点老杜Spring6自学笔记

sls1223074612的博客 3702

2023最新版老杜Vue2+3实战教程(五)Vuex

vuex是实现数据集中式状态管理的插件。数据由vuex统一管理。其它组件都去使用vuex中的数据。只要有其中一个组件去修改了这个共享的数据,其它组件会同步更新。一定要注意:全局事件总线和vuex插件的区别:全局事件总线关注点:组件和组件之间数据如何传递,一个绑定on,一个触发on,一个触发on,一个触发emit。数据实际上还是在局部的组件当中,并没有真正的让数据共享。只是数据传来传去。vuex插件的关注点:共享数据本身就在vuex上。其中任何一个组件去操作这个数据,其它组件都会同步更新。

qaswedpl的博客 238

100集高清Photoshop CS6 中文国语视频教程.txt

100集高清Photoshop CS6 中文国语视频教程.txt

动力节点Vue3笔记——Vue核心技术

函数式:// element 是真实dom对象(可以通过 element instanceof HTMLElement 判断)// binding 是绑定的对象函数调用时机:第一时机:模板初次解析时(元素与指令初次绑定)。第二时机:模板重新解析时。对象式:可以使用对象式完成更加细致的功能。// 元素与指令初次绑定时自动调用。// 元素已经被插入页面后自动调用。// 模板重新解析时被自动调用。自定义指令的函数中的this是window。

Java_Leo12的博客 487

北京动力节点MySQL课程

北京动力节点MySQL课程后期我将发布很多视频,请关注我的资源页面,由于视频文件较大,所以会不定期上传。

动力节点Vue3笔记第五章Vuex

on,一个触发。

weixin_54585403的博客 209

北京动力节点SSH框架讲义(完整版)

北京动力节点SSH框架讲义(完整版)

动力节点 王勇老师drp项目 培训日记

动力节点王勇老师的DRP项目培训日记,绝对经典!

动力节点|Vue2+3全家桶教程,一套通关前端最火框架

•024.Vue数据代理时对属性名的要求.avi.baiduyun.uploading。•026.手写Vue框架数据代理的实现.avi.baiduyun.uploading。•034.关于事件回调函数中的this.avi.baiduyun.uploading。•028.Vue框架源代码解读.avi.baiduyun.uploading。•022.数据代理机制的实现.avi.baiduyun.uploading。•032.Vue的事件绑定.avi.baiduyun.uploading。

hujidedf的博客 291

北京动力节点-22-linux.pdf

VMware VMwareVMwareVMware-workstationworkstationworkstationworkstationworkstationworkstationworkstationworkstationworkstation workstation目前最新的 前最新的 版本是 12 .X 从 11 .x 开始只支持 64 位操 作系统 作系统 我们以 10.10.10.x例,因为支持 32 位操作系统 操

动力节点|老杜Vue完整版教程,轻松掌握前端火爆框架

专业的前端人员可以学,后端开发也可以学。1. 更简单的使用方式:Vue的API设计易于学习和使用,他的响应式系统可以自动追踪依赖关系,并在需要的时候进行更新,这使得开发者可以完全专注于业务逻辑的开发而不必关心DOM操作。4. 高效的性能:Vue最初就是为了提高渲染性能而设计的,其引以为傲的响应式系统和高效的虚拟DOM,能够极大的提高应用程序的性能。•026.手写Vue框架数据代理的实现.avi.baiduyun.uploading。•032.Vue的事件绑定.avi.baiduyun.uploading。

DDDYSz的博客 621

版电力系统故障录波_故障录波识图与典型故障波形分析

1、设置故障录波的目的故障录波装置是对电力系统运行状况进行监控的一种自动化设备。系统正常运行时,录波装置不启动录波,当系统发生故障时,通过启动录波装置迅速启动录波器录波,直接记录反应故障装置安装处系统故障的电气量。2、故障录波的作用(1)正确评价继电保护和自动装置的工作。(2)正确分析事故的原因并研究防止对侧。(3)发现继电保护和自动装置缺陷。(4)发现一次设备缺陷,及时消除隐患。(5)帮助寻找故...

weixin_42495661的博客 1万+

同物种,不同版本之间的坐标转化

是最常用的工具,如果有可用的链文件,这通常是最便捷的方法。CrossMap是一个功能强大的替代工具,支持多种文件格式和物种。自定义生成链文件适用于没有现成资源的情况,虽然复杂一些,但可以满足特定需求。Ensembl 和 Gramene提供的工具适用于支持的物种,尤其在植物基因组领域可能更具优势。选择合适的方法取决于你正在处理的物种、基因组版本以及现有的资源。

qq_40256654的博客 1853

动力节点|深入浅出Vue框架学习教程,带你快速掌握前端开发核心技能

专业的前端人员可以学,后端开发也可以学。Vue是一款流行的JavaScript前端框架,最初由华人开发者尤雨溪创建,并在GitHub上开源发布,它采用MVVM模型的设计思维,专注于UI项目的开发,能够方便地组织和管理页面上的各个组件,大大提高了前端开发的效率。•024.Vue数据代理时对属性名的要求.avi.baiduyun.uploading。•026.手写Vue框架数据代理的实现.avi.baiduyun.uploading。•032.Vue的事件绑定.avi.baiduyun.uploading。

Java___interview的博客 517

PHP项目实战:易宝支付SDK对接全流程(含回调处理与常见问题排查)

本文详细介绍了PHP项目中易宝支付SDK的对接全流程,包括环境准备、SDK配置、支付请求构建与发起、回调处理实战以及常见问题排查。特别针对回调处理环节的常见问题提供了解决方案,帮助开发者快速完成支付对接并优化性能。

weixin_29007809的博客 388

Vue2项目搭建webpack+VueX

Vue脚手架学习笔记,动力节点视频学习

YUELEI118的博客 546

LTE信令流程及业务流程

eNB返回E-RAB建立响应消息,E-RAB建立列表信息中包含成功建立的承载信息,E-RAB建立失败列表消息中包含没有成功建立的承载消息。3)当下行数据达到时,网络侧先对UE进行寻呼,随后UE发起随机接入过程,并发起service request过程。用户面:S-GW向eNB发送承载建立请求,包含(IMSI, QoS, TFT, TEID, LBI等)控制面:MME向eNB发送E-RAB建立请求,包含E-RAB ID,QoS,S-GW TEID。3)在S1接口上建立S1承载,在Uu接口上建立数据无线承载。

qq_44390640的博客 4582

rk3568 rockit编译测试

编译rockit不能使用SDK默认编译kernel的交叉编译,需要采用编译buildroot的,而编译buildroot的编译器SDK并没有存放,需要编译过buildroot之后才可以用。命令参数相关解析可查阅代码,这里提醒一下-l参数,这是程序运行计数,默认是100,时间很短,基本上显示画面一闪而过,一度以为是程序哪里出问题了,改用-l 1000,画面显示时间加长。此处跳过系统,单领出来编译。rockit组件包在4.10版本需要手动编译,奈何我的版本怎么都编译不了,后来改用5.10版本才编译通过。

zfenggo的博客 4197
上一篇: 动力节点Vue笔记④ Vue与Ajax
下一篇: 老杜Vue笔记⑥ 路由route
Java_Coding1
博客等级 码龄5年 9粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值