Vue学习之路17----事件

可以自定义事件让子组件向父组件传值

1.使用emit

请添加图片描述

请添加图片描述

2.使用props

请添加图片描述

请添加图片描述

3.使用mitt

其实mitt和第一种方法类似,都用emitt事件,但是mitt不局限于父子之间通信,他可以在任意2个组件之间通信,

虽然需要安装,但mitt很小,几乎不影响组件正常运行速度

安装mitt

npm i mitt

然后在src目录下新建utils文件夹(utils用来存放工具),在新建一个emitter.js文件,如图emitter.js写入以下代码

请添加图片描述

以上代码通过mitt()创建实例,.on用来绑定事件,.emit用来触发事件,.off用来解绑事件,也可以用.all.clear解绑全部事件

然后在main.js中引入就可以使用了

import emitter from "@/utils/emitter";

运行效果如下:

请添加图片描述

接下来是组件通信的写法,假设父组件里有v1,v2两个组件

请添加图片描述

如上可实现组件通信,建议在组件销毁时解绑

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值