Vue中的组件通信 ---复习

1. 父子组件LY
通过自定义属性和props来实现父子组件间的通信

// 1. 创建父子关系的组件
// 2. 父组件中使用子组件时添加自定义属性

<子组件名 :parentdata="传递的变量名"></子组件名>

// 3. 子组件中用props接收参数

export default{
	props:['parentdata']
}

// 4. 子组件中使用父组件传递过来的变量
直接使用变量名

代码示例LY
父组件中的代码
在这里插入图片描述
子组件中的代码
在这里插入图片描述

2.子父组件LY
通过自定义事件和$emit实现子传父
// 1. 创建父子关系的组件
// 2. 在父组件使用子组件的时候,传递一个自定义的函数

<子组件名 @自定义事件名="事件函数"></子组件名>

// 3. 子组件中,button中加点击事件主动触发父组件传递的函数

methods:{
	点击事件函数(){
		// $emit用来触发父组件传递的事件
		this.$emit('父组件传递的自定义事件名' , 传递给父组件的数据)
	}
}

// 4. 父组件中,自定义变量,在传递的自定义事件中接收子组件传递的数据,赋值给自定义变量,就可在页面中渲染

代码示例LY
父组件中的代码
在这里插入图片描述
子组件中的代码
在这里插入图片描述
3. 非父子组件(兄弟组件、跨级组件)LY
eventbus
// 1. 公用容器 main.js
Vue.prototype.bus= new Vue();
new Vue()…//公用容器设置需在示例化对象之前
// 2. 数据发送
this.bus.KaTeX parse error: Expected '}', got 'EOF' at end of input: …(){ this.bus.on(‘事件名’ , (形参)=>{

})
}

代码示例LY
main.js
在这里插入图片描述

创建兄弟组件,big和small为兄弟组件
在这里插入图片描述

big组件(big组件传递数据,通过公用组件中的$emit)
在这里插入图片描述

small组件接收数据 (通过公用组件中的$on)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值