Vue学习笔记(十):全局事件总线

vue,学习,笔记,全局,事件,总线 · 浏览次数 : 20

小编点评

**全局事件总线机制** **简介** 全局事件总线是一种在任何组件中共享数据的机制,它通过一个空的 Vue 实例作为中央事件总线,允许组件之间无缝地传递数据。 **使用** 1. 在 `main.js` 中引入 `Vue` 模块。 2. 安装全局事件总线:`Vue.prototype.$bus = this`。 3. 在组件中绑定事件到全局事件总线:`this.$bus.$on('eventName', function() { ... })`。 4. 触发事件:`this.$bus.$emit('eventName', data)`。 **示例** ```html import Vue from 'vue' import App from './App.vue' import Bus from './Bus.vue' // 引入全局事件总线 Vue.prototype.$bus = new Bus() new Vue({ el: '#app', render: h => h(App), beforeCreate() { this.$bus.$on('changeAge1', id => { // 将事件添加到事件总线中 }) } })
``` **结果** 当您点击“修改年龄”按钮时,页面将显示以下消息: ``` id值为:1, age值加1 ``` **总结** 全局事件总线是一种简单且有效的方法来实现组件间数据传递。它可以轻松地将事件和数据传递到任何组件,无论它们是否嵌套。

正文

与Vue学习笔记(十):全局事件总线相似的内容:

Vue学习笔记(十):全局事件总线

之前博客中介绍了prop和调用事件的方式在父-子组件之间进行数据,这种方式在只有一层嵌套层时可以使用,但是路过存在多层嵌套,多层多个“兄弟”组件之间传递数据,就非常麻烦。对此,vue中提供了一种全局事件总线机制,数据传递是通过一个空的Vue实例作为中央事件总线,通过它来触发事件和监听事件,可以实现几...

1.课程介绍及环境准备

此合集是刘老师教编程的学习笔记,是个值得推荐的up up链接 https://space.bilibili.com/472907970?spm_id_from=333.788.0.0 1.课程介绍及环境准备 SpringBoot + vue 全栈开发基础 开发工具:IDEA+VSCode 后端:ja

Vue学习笔记(九):组件化编程

1 什么是组件¶ 当页面功能十分复杂时,将页面各功能化整为零,拆分成多个不同的小部分,这样便于分析,也有利于代码的复用,在vue中,我们将划分后的每个小部分称为组件。组件化是vue里面最强的功能,可以扩展html,封装重用的代码。在使用vue时,我们可以将一个完整的页面拆分为多个组件,每个组件都用于

Vue学习笔记(七):绑定css样式

1 绑定class样式¶ vue为HTML绑定css中的class样式是通过v-bind实现的。 1.1 绑定单个class¶ 把需要绑定的样式class名赋值给一遍变量,然后通过变量v-bind绑定class属性,绑定后的class并不会覆盖原来的class属性,而是与原来的class进行叠加。如

Vue源码学习(十一):计算属性computed初步学习

好家伙, 1.Computed实现原理 if (opts.computed) { initComputed(vm,opts.computed); } function initComputed(vm, computed) { // 存放计算属性的watcher const watchers = vm

Vue源码学习(一):数据劫持(对象类型)

好家伙,了解一下Vue如何实现数据劫持 1.Vue中data的使用 首先,我得搞清楚这玩意的概念,我们先从vue的使用开始吧 想想看,我们平时是如何使用vue的data部分的? 无非是这两种情况 (你可千万不要带着惊讶的表情说"啊!原来有两种写法的吗") //函数写法 data() { return

Vue源码学习(二):渲染第一步,模板解析

好家伙, 1.去哪了 在正式内容之前,我们来思考一个问题, 当我们使用vue开发页面时,中的内容是如何变成我们网页中的内容的? 它会经历四步: 解析模板:Vue会解析中的内容,识别出其中的指令、插值表达式({{}}),以及其他元素和属性。

Vue源码学习(三):渲染第二步,创建ast语法树

好家伙,书接上回 在上一篇Vue源码学习(二):渲染第一步,模板解析中,我们完成了模板解析 现在我们继续,将模板解析的转换为ast语法树 1.前情提要 代码已开源https://github.com/Fattiger4399/analytic-vue.git手动调试一遍, 胜过我

Vue源码学习(四):渲染第三步,将ast语法树转换为渲染函数

好家伙, Vue源码学习(三):渲染第二步,创建ast语法树, 在上一篇,我们已经成功将 我们的模板 转换为ast语法树 接下来我们继续进行操作 1.方法封装 由于代码太多,为了增加代码的可阅读性 我们先将代码进行封装 index.js import { generate } f

Vue源码学习(六):(支线)渲染函数中with(),call()的使用以及一些思考

好家伙, 昨天,在学习vue源码的过程中,看到了这个玩意 嘶,看不太懂,研究一下 1.上下文 这段出现vue模板编译的虚拟node部分 export function renderMixin(Vue) { Vue.prototype._c = function () { //创建标签 return