组件通信

我们知道 vue 是 单页面应用 切换是组件与组件之间的切换
那么在实际项目开发中组件之间如何传值?

父传子
在这里插入图片描述
在App主组件中也就是父组件引入子组件A

在这里插入图片描述
在子组件中接收父组件传过来的值
在这里插入图片描述
效果

父传子
1、在父组件中的子组件标签上绑定一个属性,挂载要传输的变量
2、在子组件中用props属性来接受,接受的格式props:[“自定义属性”]
3、直接使用接受的数据

子传父
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击前和点击后的效果

子传父
1、在父组件中定义一个方法
2、在父组件中的子组件标签上自定义一个事件,挂载1定义的方法
3、在子组件的方法中通过this.$emit()来调用父组件的方法,要传输的数据是以实参的方式来传递 this.$emit(“自定义事件名”,“参数”)
4、在父组件的方法中接受这参数就行


兄弟传值:

1、如果有共同的父组件,可以实用父传子然后再子传父
2、bus总线传值
1、定义空的vue实例来担任总线的位置
2、在要发送的子组件中引入总线,通过Bus.$emit()来派发事件,将要传输的数据以参数的形式传递
3、在接受的一方引入总线,通过Bus.$on()来监听事件,接受参数

在这里插入图片描述
在主组件中引入A B 两个组件 此时 A B 组件 是兄弟关系

在这里插入图片描述
A组件传值给B 组件
通过Bus.$emit()来派发事件,将要传输的数据以参数的形式传递

在这里插入图片描述
在B 组件中 通过Bus.$on()来监听事件,接受参数

在这里插入图片描述
定义空的 vue 实例来担任总线的位置

点击前和点击后的效果
在这里插入图片描述
在这里插入图片描述

props数据类型验证:
从父组件传过的数据,验证他的数据类型
在接受父组件传过来数据的时候使用对象的方式来接受数据 props:{“自定义属性”,数据类型}
可以验证的数据类型:String Number Object Boolean Function Date Array Symbol

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值