Vue2.0组件之间数据交互和通信

从零开始搭建自己的VueJS2.0+ElementUI单页面网站(三、组件编写及通信) 前言本文是本系列的第三篇文章。在前两篇文章中我们介绍了关于搭建vue+elementUI开发环境的方法和编写导航页的方法。关于前两篇文章的内容,若读者有些记不清楚,可以点击下方链接快速查看: 从零开始搭建自己的VueJS2.0+ElementUI单页面网站(一、环境搭建) 从零开始搭建自己的VueJS2.0+ElementUI单页面网站(二、编写导航页) 阅读详情

Vue2.0组件之间数据交互和通信。
Vue2.0废弃了dispatch 和 $broadcast,如何在实现组件之间的数据交互和通信?下面是一个简单的demo解决了这个问题。
事件中心(evengtHub.js):

//定义事件中心,在模板通信是使用。
import Vue from 'vue';
export default {
    bus: new Vue()
}

父组件:

<div>
    <!--msg必须跟子组件的msg参数一致,@msg是子组件向父组件传参数的接口,:msg是父组件向子组件传参数的接口-->
    <child1 @msg='getMsg' :msg1='msg1'></child1>
    <child1 ref='child2'></child2>
<div>

<script>
import bus form 'eventHub'
    componets: {
        child1: require('child1'),
        child2: require('child2');
    },
    data() {
        return: {
            msg1: 'hello'
        }
    },
    methods: {
        getMsg(el) {
             this.$refs.child2.drop(el);
             //父组件调用child2组件的drop方法,传递el参数,子组件和子组件之间的通信
        }
    }
</script>



子组件1

<template>
    <div class='child1' @click='sendMsg'>{{msg}}<div>
</template>

<script>
import bus form 'eventHub';
//props属性用于子组件接收父组件传过来的参数
    props: {
        msg1 :String
    },
    methods: {
        this.bus.$emit('add', event.target);//此方法可以通过子组件1在任意组件内响应点击事件。
        this.$emit('msg', event.target);//发送数据给父组件,这个方法的'msg'参数必须和父组件的@msg保持一致。
    }
</script>



子组件2

<template>
    <div class='child2'><div>
</template>

<script>
import bus form 'eventHub'
methods: {
    drop(el) {
        console.log(el);//打印出child1的div元素
    }
},
created() {
    this.bus.$on('add',() => {
        console.log('响应child1的点击事件');
    })
}
</script>

上面的例子中包括父子组件之间互相传参数和组件之间的通信,更好的组件通信事件请使用vuex。

vue2.0中的组件通信3——兄弟组件之间通信 上一篇我写了子组件通过事件向父组件发送数据,在这里我们就来聊聊同级组件之间数据通信的问题。同级组件之间的通信需要依赖一个vue实例作为中介者,(类似邮差)起到传递信息的作用。 我的代码依然沿用上面两篇的目录结构: 新建一个event.js文件,在里面新建一个vue实例,这个实例就承担起了组件之间通信的桥梁了,也就是中央事件总线。 加入代码 event.js: import Vue fr... 阅读详情

相关推荐

vue2.0路由及兄弟组件通信

最近在学习用vue2.0进行项目的开发,由于接手项目的时候,项目的完整架构已经搭建完毕,为了不破坏之前的项目,我就采用了比较古老的写法,说实话不采用es6的语法去写,有好多事情都变得比较麻烦了,不过原理还是一样的,之前有写过父与子 和子与父之间的通信,这次主要说的是兄弟组件的通信及vue路由的使用。 项目实景如下 : 按照路由—-组件通信 —— 路由切换时的数据加载 方式来进行剖析

shunchenggong的博客 3214

Vue实现组件间通信的11种方式

组件之间的通信是指不同组件之间在共享数据、传递消息或触发事件等方面进行交流和协作的过程。在应用程序中,不同的组件可能需要相互传递数据、共享状态、触发动作或响应事件等,以实现组件之间的协调和交互。: useAttrs是 Vue 3 中提供的一个 Composition API,用于获取组件上未声明为props的属性。这些通信方式可以根据应用程序的需求和复杂性进行选择和组合使用,以实现组件之间的有效通信和协作。原文合集地址如下,有需要的朋友可以关注。

xxx 2636

从mseed到SAC格式转换全攻略:mseed2sac工具安装与批量处理技巧

本文详细介绍了如何将mseed格式的地震数据高效转换为SAC格式,涵盖mseed2sac工具的安装、单文件转换技巧、批量处理自动化实现以及元数据高级处理策略。通过具体命令和脚本示例,帮助地震学研究者快速掌握数据预处理的关键技术,提升波形数据分析效率。

ruby5的博客 927

vue2中父子传值的5种方式?

使用ref可以更精确地访问特定的子组件实例,并且不需要依赖于子组件在this.$children数组中的位置。补充:在Vue.js中,可以通过在子组件上添加ref属性,并指定一个唯一的名称,来创建一个引用。3.parent和children:通过访问父组件的this.parent或子组件的this.children属性来直接访问父组件或子组件的实例,并进行数据传递。1.父传子:props, 父组件通过属性绑定的形式将数据传递给子组件,并在子组件中定义props来接收。获取父组件实例,并访问了父组件实例的。

weixin_45724850的博客 1万+

【数字电源/MATLAB+PLECS】如何进行 Buck 数字电源仿真(二)PLECS 搭建开环 Buck 功率级

本文介绍了如何在PLECS中搭建开环Buck功率级模型,验证数字电源设计的基本思路。重点内容包括: 明确开发顺序:先开环验证功率级,再闭环设计控制器 搭建关键组件:输入电源、PWM模块、MOSFET开关、续流二极管、LC滤波电路及负载 设置初始参数:24V输入、12V输出、200kHz开关频率、22μH电感、100μF电容 测量关键波形:MOSFET Vds验证开关动作、电感电流纹波和输出电压稳态值 提供完整仿真模型和GitHub资源,便于读者复现验证 文章强调通过开环测试先确保功率级正确性,为后续闭环控制

weixin_43234123的博客 1218

django drf 框架知识点(一)——serializer序列化器_用法全解

【django drf】序列化器:别名设置,全部参数序列化,自定义字段,只读只写,部分更新

qq_59344127的博客 1338

VUE2 : 父子组件传值

父子组件传值

yuanchun的知识整理 4316

格(Lattice)基础(一)

有关格的基础概念,和相关的格难题

Amire0x的小乐园 5699

Vue组件之间的数据交互总结Vue插槽Vue事件总线Vuex

props eventbus slot vuex

angrynouse的博客 1269

EGO-Planner文章解读(一)——论文原理和算法实现

详细解读egoplanner论文和代码

fegxg的博客 3990

线程池详解(通俗易懂超级好)

目标 【理解】线程池基本概念 【理解】线程池工作原理 【掌握】自定义线程池 【应用】java内置线程池 【应用】使用java内置线程池完成综合案例 线程池 线程池基础 线程池使用 线程池综合案例 4.学员练习 5.线程池总结 概念介绍 1:什么是线程池 2:为什么使用线程池 3:线程池有哪些优势 什么是池 什么是线程池 线程池其实就是一种多线程处理形式,处理过程中可以将任务添加到队列中,然后在创建线程后自动启动这些任务。这里的线程就是我们前面学过的线程,这里的任务就是我们前面学过的实现了Runna.

拉格朗日的学习笔记 12万+

vue2.0中组件传值的几种方式

搭建好测试环境 app.vue <template> <div id="app"> <img alt="Vue logo" src="./assets/logo.png"> <HelloWorld msg="Welcome to Your Vue.js App"/> <child></child> </div> </template> <script> i

beekim的博客 2287

动量因子在A股市场的有效性分析:量化实证研究

验证动量因子在A股市场的有效性及时间周期性分析不同时间窗口(短期/中期/长期)对动量效应的影响量化交易成本、市场流动性对动量策略收益的侵蚀程度比较A股与成熟市场(如美股)动量效应的差异特征理论框架:行为金融学解释动量效应的产生机制技术实现:Python全流程代码实现动量因子计算与回测实证分析:统计检验、风险收益指标、敏感性分析应用拓展:结合市场微观结构的策略优化方案动量因子(Momentum Factor)

2501_92132293的博客 2482

Vue2.0子同级组件之间数据交互

熟悉了Vue.js的同级组件之间通信,写此文章,以便记录。 Vue是一个轻量级的渐进式框架,对于它的一些特性和优点,请在官网上进行查看,不再赘述。 使用NPM及相关命令行工具初始化的Vue工程,目录结构如下 接着我们进入Demo,首先我们可以删除掉模板项目中src/components/Hello.vue,然后在App.vue中删除对于Hello子组件的注册和使用还有一些其他无关紧要的东西,此时...

aas15的博客 2665

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Vue组件之间的通信和路由

文章目录Vue组件之间的通信和路由一、组件化1.1 `全局组件`1.2.组件的复用1.3 `局部组件`子组件中声明的各种需要的数据和方法:1.4.组件通信1.4.1 props(父向子传递)1.4.2 props验证1.4.3 子向父的通信:$emit二、路由 vue-router2.1.场景模拟2.1.1.编写父组件2.1.2.编写登录及注册组件2.1.3.在父组件中引用 Vue组件之间的通信和...

Xxacker的博客 2822

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

VUE中组件之间的通信方式

目录 父子组件之间的通信方式 1.props+$emit() 3.$parent+$children 4.provide+inject 5.$attrs+$listeners 6.ref+$refs (备注视频代码学习来自:重要!父子组件通信的方式有哪几种?【Vue面试题】_哔哩哔哩_bilibili) 父子组件之间的通信方式 1.props+$emit() 1.父组件通过props向子组件传递数据(在子组件中用props接收) 2.子组件通过$emit()向父组件传递数据或事件,如

qq_44810886的博客 4684

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

vue组件开发之组件之间的数据交互

组件键数据交互 父组件向子组件传值 组件内部通过props接收传递过来的值Vue.component('menu-item',{ props:['title',...],//里面的值都是从父组件中传递过来的 template:'<div>{{title}}</div>' }) 父组件通过属性将值传递给子组件 <menu-item title='来自父组件的...

poppy995的博客 891

总结一下 vue2 组件之间的通信

有这么一个场景,组件 A 中有组件 B,组件 B 中有 C。AC 之间通信怎么办?另外说个其他的小 tips。

lazy_tomato的博客 1046

VUE2.0组件间7中通信方式

VUE2.0组件间传值大全 Vue组件通信的方式,这是在面试中一个非常高频的问题,很多人只知道props和 $emit,下面简单介绍一下Vue的一些其他传值方式。 一、props/$emit props/$emit可以说Vue里面最常见的通信方式。 props: props用于接收来自父组件通过v-bind传递的数据,可以通过type、default、required、validator等配置来设置属性的类型、默认值、是否必传和校验规则。 $emit: 在组件通信时,我们通常使用 $emit来触发父组件v

weixin_40984083的博客 1502

vue中子组件和子组件之间怎么通信_vue2.0组件之间通信(父子、子父、平级)

组件间通信无外乎父传子、子传父和兄弟间传递,在不使用vuex情况下,组件间如何通信呢,来看下面总结的(原文:Vue2.0组件之间通信)一.父组件向子组件传值1.创建子组件,在src/components/文件夹下新建一个Child.vue2.Child.vue的中创建props,然后创建一个名为message的属性child.png3.在App.vue中注册Child组件,并在template中加...

weixin_39837124的博客 506

Vue3.0组件之间通信(defineProps 和 defineEmits 及 defineExpose)

1. defineProps 和 defineEmits 、defineExpose 都是只能在 中才能使用,他们不需要被导入即可使用,并且会在编译 语法块时一同被编译。在子组件中可以使用defineProps声明需要接收父组件的哪些props,它需要定义一个包含props字段的对象,每个字段定义默认值和类型等信息。获取用setup语法糖创建的子组件实例时,获取的实例是没有子组件自定义的属性和方法的,此时我们需要通过。可以通过将属性或方法添加到。

江湖行骗老中医 1162

Vue框架——兄弟组件之间数据交互

兄弟组件之间数据交互兄弟组件之间数据交互需求需求实现 兄弟组件之间数据交互需求 需求:创建两个组件,分别是 kk-text 和 bb-text ,两个组件里都有一个属性 num, 在两个组件的字符串模板里都定义一个按钮,每当点击其中一个组件的按钮时,另一个组件的num值将会改变 重点:通过事件中心进行间接的数据交互 实现事件中心: ① 创建事件中心 var hub = new Vue(); ② 监听事件和销毁事件 // 监听 hub.$on('事件名称', 事件函数); // 销毁 hub.$of

cmy_top的博客 460

VueJS-组件通信

前端在处理交互时,经常会遇到一个问题:组件之间如何通信? 下面介绍几种常用的组件通信方式,包括父子组件,兄弟组件,复杂组件下的不同通信方式 现代通信方式: FLUX VUEX FLUX将一个应用分成四个部分:文档 View: 视图层Action(动作):视图层发出的消息(比如mouseClick)Dispatcher(派发器):用来接收Actions、执行回调函数Store

qq_40479190的博客 1082

vue2.0_子父组件通信与兄弟组件通信的使用

vuex的基本内容vue子父组件通信的学习一、什么是子父组件通信?二、为什么要使用子父组件通信?三、子父组件通信  1、子组件向父组件传递数据(this.$emit)  2、子组件向父组件传递数据(this.$refs)  3、父组件向子组件传递数据  4、父组件向子组件传递方法兄弟组件通信的学习一、子组件与子组件的通信方式(这边我直接以一个简单的在线聊天室为例子)  1、通过让父组件充当两个子组件之间的中间件(中继)。  2、通过使用EventBus(事件总线),它允许两个子组件之间直接通讯,而不需要涉及

QiuRenBB的博客 785
上一篇: Vue2.0 父子组件之间通信
下一篇: http 请求头
程序员青戈
程序员青戈 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄10年 3万+粉丝 250原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员青戈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值