Vue-组件自定义事件

本文介绍了如何在Vue组件中使用自定义事件$emit进行父子组件通信,以及如何使用$off进行事件解绑,包括解绑特定事件、解绑所有事件和解绑DOM原生事件。还提供了App.vue和Student.vue组件的完整代码示例。
摘要由CSDN通过智能技术生成

test(name, …params) {…}

}

mounted() {

this. r e f s . d e m o . refs.demo. refs.demo.on(‘atguigu’,this.test)

}

子组件触发自定义事件


this.$emit(‘atguigu’,this.name, this.sex, 800)

// 子组件触发自定义事件的时候可以传递多个参数

解绑自定义事件


❤️   解绑一个自定义事件:this.$off(‘atguigu’)

❤️   解绑多个自定义事件:this.$off([‘atguigu’, ‘demo’])

❤️   解绑所有的自定义事件:this.$off()

组件上也可以绑定原生DOM事件,需要使用native修饰符


<Student ref = “student” @click.native=“show”>

注意事项:

通过this. r e f . x x x . ref.xxx. ref.xxx.on(‘atguigu’,回调)。绑定自定义事件时,回调要么配置在methods中,要么用箭头函数,否则this指向会出问题

完整案例

App.vue父组件

{{ atguigu }}-{{studentname}}

<Student ref=“student” @click.native=“show” />

Student.vue子组件

学生名称:{{ name }}

学生性别:{{ sex }}

number: {{ number }}

<button @click=“add”>点我number子加

<button @click=“sendStudentName”>点我获得学生的姓名

<button @click=“unbind”>解绑atguigu事件

<button @click=“dath”>点我摧毁Student组件的饿实例对象vc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值