$emit 和 $on 之间传递数据的问题

来源:18-7 ratingselect组件(1)

aliezzzz

2018-12-13

图片描述
官方文档中 通过$on可以接收$emit传递的数据
但是我在案例中直接在父组件里这样接收数据也是可以的,那么用$on来接收有什么区别呢,希望老师能够解答
图片描述

写回答

1回答

ustbhuangyi

2018-12-13

$on 是监听当前实例派发的事件,通常子组件不会直接修改父组件的数据,而是通过往自身派发一个事件,然后由于事件监听函数的定义是在父组件环境中,所以就可以在父组件中执行回调函数了,这里可以去修改父组件的数据。

0
2
ustbhuangyi
回复
aliezzzz
不一样,this.$on 是在当前的组件实例上监听事件,而在模板中的子组件写 v-on:[事件名],是在子组件实例上监听事件。
2018-12-14
共2条回复

Vue.js2.5+cube-ui重构饿了么App(经典再升级)

掌握Vue1.0到2.0再到2.5最全版本应用与迭代,打造极致流畅的WebApp

9868 学习 · 4162 问题

查看课程