Loading [MathJax]/jax/output/CommonHTML/fonts/TeX/AMS-Regular.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >VUE父子组件之间的传值,以及兄弟组件之间的传值;

VUE父子组件之间的传值,以及兄弟组件之间的传值;

作者头像
全栈程序员站长
发布于 2022-08-29 07:13:50
发布于 2022-08-29 07:13:50
2.4K0
举报

大家好,又见面了,我是你们的朋友全栈君。

一、Vue父子 组件之间传值

vue使用中,经常会用到组件,好处是: 1、如果有一个功能很多地方都会用到,写成一个组件就不用重复写这个功能了; 2、页面内容会简洁一些;方便管控; 子组件的传值是通过props来传递数据,$emit来触发事件; 下面是一个简单的子组件props传值: 父组件的部分:

首先引入组件,在组件上绑定你要传给组件的值;

然后,在组件里通过props来接收你从父页面传过来的值;so,父组件把值传给子组件就完成了; 下面是一个子组件在把值传给父组件的例子: 父组件部分:

子组件部分:

先是 c h a n g e 监 听 i n p u t 值 的 变 化 , 通 过 change监听input值的变化,通过 change监听input值的变化,通过emit来连接父组件和子组件之间的事件;transferUser是在父组件连接事件的名称,后面跟上返回的数据;然后在父组件通过getUser获取数据,就这样子传父的过程就完成了…

二、兄弟组件之间的传值 兄弟组件之间的传值和父子组件之间的传值非常相似,都是通过$emit; 原理是:vue一个新的实例,类似于一个站,连接着两个组件,也就是一个中央事件总线; 下面是一个bus实例:

1、创建一个firstChild组件,引入bus,接着一个按绑定数据传输事件:

我们通过一个emit实例方法触发当前实例(这里的当前实例就是bus)上的事件,附加参数都会传给监听器回调。

下面是另一个组件,引入bus实例,通过一个p标签接收数据:

这个组件的mounted里,我们监听了userDefinedEvent事件,并把传递过来的事件通过emit)的额外参数。

接下来就是展示真正的效果的时候了:

点击之后:

总结: 1,首先创建一个事件总线,例如bus,作为一个通讯的桥梁; 2,在需要传值的组件中,通过 e m i t 触 发 一 个 自 定 义 事 件 , 并 传 递 参 数 ; 3 , 在 接 收 数 据 的 组 件 中 , 通 过 emit触发一个自定义事件,并传递参数; 3,在接收数据的组件中,通过 emit触发一个自定义事件,并传递参数;3,在接收数据的组件中,通过on监听自定义事件,并处理传递过来的参数;

另外: 1、兄弟组件之间与父子组件之间的数据交互,两者相比较,兄弟组件之间的通信其实和子组件向父组件传值有些类似,其实他们的通信原理都是相同的,例如子向父传值也是 e m i t 和 emit和 emit和on的形式,只是没有eventBus,但若我们仔细想想,此时父组件其实就充当了bus这个事件总线的角色。 2、这种用一个Vue实例来作为中央事件总线来管理组件通信的方法只适用于通信需求简单一点的项目,对于更复杂的情况,Vue也有提供更复杂的状态管理模式Vuex来进行处理。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145535.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Vue组件之间传值
1.Vue组件之间传值 1.1父组件向子组件传值   1.组件内部通过props接收传递过来的值   2.父组件通过属性将值传递给子组件 父组件发送的形式是以属性的形式绑定值到子组件身上。 然后子组件用属性props接收 在props中使用驼峰形式,模板中需要使用短横线的形式字符串形式的模板中没有这个限制 <div id="app"> <div>{{pmsg}}</div> <!--1、menu-item 在 APP中嵌套着 故 menu-item 为 子组件
梨涡浅笑
2022/01/06
1.2K0
Vue组件之间传值
vue2.0 组件通信
Vue 采用基于组件的开发方式,那么组件之间的通信必不可少:比如父组件要给子组件传递数据,子组件将它内部发生的事情告知给父组件,因此定义一个良好的接口尽可能将组件解耦显得尤为重要,这保证不同的组件可以在相对独立的环境中开发测试,而且更方便阅读理解以及组件复用。
李振
2021/11/26
9420
vue2.0 组件通信
面试官:Vue组件间通信方式都有哪些?
都知道组件是vue最强大的功能之一,vue中每一个.vue我们都可以视之为一个组件
@超人
2021/02/26
1.4K0
面试官:Vue组件间通信方式都有哪些?
vue组件通信方式有哪些?
父组件通过props的方式向子组件传递数据,而通过$emit 子组件可以向父组件通信。
bb_xiaxia1998
2022/10/12
1.9K0
vue中组件间传值
父组件向子组件传值,可以通过绑定属性传值;子组件通过props接收父组件传值。 父组件:
用户7741497
2022/03/05
8710
深入浅出,带你看懂Vue组件间通信的8种方案
子组件通过$emit触发定义在父组件里面的自定义事件,他可以传两个值,第一个是自定义事件名,第二个是要传递的值。
JanYork_简昀
2022/08/29
1.3K0
深入浅出,带你看懂Vue组件间通信的8种方案
vue组件间通信
组件是 vue 最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用。我们需要使用特定的方式来实现组件间的数据通信,接下来让我们一个个介绍这几种类别的组件通信是如何实现的。
江拥羡橙
2022/11/15
1.2K0
vue组件间通信
Vue中组件之间8种通信方式,值得收藏
vue是数据驱动视图更新的框架, 所以对于vue来说组件间的数据通信非常重要,那么组件之间如何进行数据通信的呢?首先我们需要知道在vue中组件之间存在什么样的关系, 才更容易理解他们的通信方式, 就好像过年回家,坐着一屋子的陌生人,相互之间怎么称呼,这时就需要先知道自己和他们之间是什么样的关系。vue组件中关系说明:
前端达人
2019/07/30
8960
vue组件详解(三)——组件通信
组件之间通信可以用下图表示: 组件关系可分为父子组件通信、兄弟组件通信、跨级组件通信。 一、自定义事件 当子组件需要向父组件传递数据时,就要用到自定义事件。 子组件用$emit ()来触发事件,父组件
柴小智
2018/04/10
1.2K0
vue组件详解(三)——组件通信
23、一看就懂父子组件之间的传值
通过"props down , events up"我们就简单的实现了父子组件之间的双向传值,这是很基本的知识点,其它还有$invoke等等方法,大家可以去官网好好看看。 关于通信和状态管理就必须了解vuex了,后面我们在项目中当涉及了再好好讲。
Ewall
2018/09/04
3.2K0
23、一看就懂父子组件之间的传值
Vue非父子组件传值「建议收藏」
创建一个公共的Js文件,让其专门负责传值。就像公共的交通工具bus,data可以乘坐这辆bus到达指定的站台(相应的组件)
全栈程序员站长
2022/08/29
7470
Vue非父子组件传值「建议收藏」
Vue非父子组件之间的传值
我们可以把一个网页拆分成很多部分,每个部分就是我们代码中的一个组件,左侧整个区域代表方块1,拆分成3个灰色区域代表方块2,左下区域又分成更小的2个深色区域,分别用2个方块3表示,右侧拆分成更小的3个深色区域用3个方块3表示
砖业洋__
2023/05/06
1.6K0
Vue非父子组件之间的传值
Vue组件通信原理及应用场景解析
在这篇博客中,我们将深入探讨Vue组件通信的原理,并探索不同的应用场景。组件通信在Vue.js开发中是一个关键的概念,它涉及到组件之间的数据传递和交互。通过理解Vue组件通信的原理和灵活运用,我们可以更好地设计和组织Vue.js应用,提高开发效率和代码质量。
猫头虎
2024/04/08
2500
Vue组件通信原理及应用场景解析
Vue-组件之间常用的通信方式
Vue 组件之间常用的通信方式 props 总线 eventbus vuex 自定义事件 关系情况 $parent $children $root $refs provide/inject 非 prop 特性 $attrs $listener props 父->子传值 用属性 parent <child :faData = '来自父亲'></child> child props:{ faData:{ type:String, default:""
一只眠羊
2021/03/25
6840
vue组件高级(上)
wach侦听器允许开发者监视数据的变化,从而针对数据的变化做特定的操作。例如,监视用户名的变化并发起请求,判断用户名是否可用。
岳泽以
2022/10/26
1.3K0
vue组件高级(上)
Vue2.组件通信
写在组件中的样式默认会全局生效。容易造成多个组件之间的样式冲突问题。 可以给组件加上scoped属性,让样式只作用于当前组件。 原理:
WuShF
2024/01/16
1750
Vue2.组件通信
vue中组件间通信方式的总结
这是我们比较熟悉的方式,主要是父子组件之间的传递方式,父传子使用props,子传父使用$emit.
用户9914333
2022/07/22
4850
Vue组件通信_android组件间通信
传递数据<组件标签名 name=’***’ :传递参数名=’值’/> 这里传递参数名前加” : ” 从而可以动态绑定数据
全栈程序员站长
2022/11/19
1.9K0
Vue组件通信_android组件间通信
【Vue】Vue中的父子组件通讯以及使用sync同步父子组件数据
根据文章内容为技术社区提供优质摘要,总结为json格式
啦啦啦321
2018/01/03
4.7K0
【Vue】Vue中的父子组件通讯以及使用sync同步父子组件数据
组件传值
vue组件之间的传值大致分为三种:父组件给子组件传值,子组件给父组件传值,兄弟组件之间传值 本文主要介绍vue组件之间简单的数据传递,如果组件之间传递的数据比较复杂,建议使用vue的状态管理模式 vuex
ZEHAN
2021/06/15
1.9K0
相关推荐
Vue组件之间传值
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档