javascript - Vue.js 中v-on自定义事件不是很理解!
天蓬老师
天蓬老师 2017-04-11 11:58:26
[JavaScript讨论组]

我在官网中看到使用 $on来监听事件,$emit触发事件。但是下面这句话我不是很理解,父组件可以在使用子组件的地方直接用v-on来监听子组件触发的事件。

{{ total }}

Vue.component('button-counter', { template: '', data: function () { return { counter: 0 } }, methods: { increment: function () { this.counter += 1 this.$emit('increment') } }, }) new Vue({ el: '#counter-event-example', data: { total: 0 }, methods: { incrementTotal: function () { this.total += 1 } } })

这是官网的例子,v-on:increment='incrementTotal' 这句话我的理解是如果increment触发的话,就会触发incrementTotal 但是总感觉不对,请问各位 应该怎样理解?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(3)
怪我咯

v-on:increment='{回调函数}', button 点击触发 button-counter 的 increment 事件,在父级监听到 increment 事件被触发后调用回调函数。

阿神

你用DOM中的冒泡去类比理解就清楚了 子元素触发事件会向上冒泡,父元素监听这个事件。也有机会去处理这个事件。

阿神

父组件监听increment事件(自定义)然后触发incrementTotal方法,而子组件点击事件触发increment方法,该方法用emit触发increment事件,这个事件被父组件监听到了,总感觉哪里不对 是不是因为好多个increment?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号