小白学习Vue(4)--实例方法/事件(vm.$emit | vm.$on | vm.$once | vm.$off)
发布日期:2021-05-08 02:04:44 浏览次数:18 分类:精选文章

本文共 875 字,大约阅读时间需要 2 分钟。

4. 实例方法/事件:

包括vm.$on、vm.$once、vm.$off、vm.$emit、

参考:

 4.1. vm.$on | vm.$once | vm.$off:

vm.$on( event, callback ) | vm.$once( event, callback ) | vm.$off( [event, callback] )

 event:  绑定的事件名
 callback:事件触发的function
·
vm.$on用于监听事件,可以配合vm.$emit来调用绑定的事件,(vm.$emit下文会介绍)
vm.$once也是监听事件,但只触发一次,一旦触发之后,监听器就会被移除
vm.$off则是移除自定义事件监听器

以下在实例创建后绑定一个reverseMessage事件,当点击button,触发实例的changMsg方法,改方法进行reverseMessage的回调

【 demo效果】:
 第一次点击,message,show都会改变,之后只有message变化,因为changeShow事件是vm.$once绑定的

message: { {message}}

show: { {show}}

v-on指令用在普通dom标签上,可以监听原生事件;用在vue组件标签上,可以监听子组件的自定义事件

vm.$on监听当前实例的自定义事件,只能在实例中定义,不能用在普通dom标签上

 4.2. vm.$emit( eventName, […args] ):

子组件可以触发父组件的事件方法

 eventName:事件名
 args:    携带的参数

v-on能监听到子组件的自定义事件,即giveAdvice

·
点击button时,触发自定义组件的giveAdvice方法,该方法又通过$emit来触发父组件的showAdvice方法
·
give-advice为事件名,showAdvice为回调函数名,本处该函数为父组件事件方法

上一篇:小白学习Vue(6)--实例方法/数据(vm.set | vem.delete | vm.watch )
下一篇:小白学习Vue(3)--全局Api(Vue.set | Vue.directive | Vue.component等)

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2025年04月13日 05时36分25秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章