Vue组件:使用$emit()方法监听子组件事件

1、监听自定义事件

父组件通过使用 Prop 为子组件传递数据,但如果子组件要把数据传递回去,就需要使用自定义事件来实现。父组件可以通过 v-on 指令(简写形式"@")监听子组件实例的自定义事件,而子组件可以通过调用内建的 $emit() 方法并传入事件名称来触发自定义事件。

组件之间的数据传递:

父传子:使用 Props 属性。

子传父:使用 $emit() 方法。

$emit() 方法的语法格式如下:

javascript 复制代码
this.$emit( eventName, [...args] )

参数说明:

eventName:传入事件的名称。

...args\]:触发事件传递的参数,该参数是非必选。 **【实例】**使用$emit()方法,实现子组件向父组件传递事件。 **(1)创建 ParentComponent.vue 父组件** ```html ``` **(2)创建 ChildComponent.vue 子组件** ```html ``` **(3)在 App.vue 根组件中,引入父组件** ```html ``` **执行结果:** ![](https://i-blog.csdnimg.cn/direct/cc511f9acf3b4337b9b1571398446bd3.png) ## 2、组件事件配合 v-model 指令 如果是在子组件中用户输入数据,我们希望在获取数据的同时发生数据给父组件,这是可以配合 v-model 指令使用。 **【实例】**子组件中用户输入数据,在父组件中实时获取数据。 **(1)修改 ParentComponent.vue 父组件** ```html ``` **(2)修改 ChildComponent.vue 子组件** ```html ``` **执行结果:** ![](https://i-blog.csdnimg.cn/direct/c45e3fa00e13476db3a7192be19a909b.png)

相关推荐
KenXu1 分钟前
从Vue 到 React:Valtio 让状态管理更熟悉
前端
JS_GGbond4 分钟前
用Canvas和SVG制作简单动画:从零开始的视觉魔法
javascript
努力学习的少女10 分钟前
对SparkRDD的认识
开发语言·前端·javascript
LYFlied15 分钟前
Webpack 深度解析:从原理到工程实践
前端·面试·webpack·vite·编译原理·打包·工程化
苏打水com40 分钟前
第十二篇:Day34-36 前端工程化进阶——从“单人开发”到“团队协作”(对标职场“大型项目协作”需求)
前端·javascript·css·vue.js·html
知了清语41 分钟前
为天地图 JavaScript API v4.0 提供 TypeScript 类型支持 —— tianditu-v4-types 正式发布!
前端
程序员Sunday1 小时前
为什么 AI 明明写后端更爽,但却都网传 AI 取代前端,而不是 AI 取代后端?就离谱...
前端·后端
之恒君1 小时前
React 性能优化(方向)
前端·react.js
coding随想1 小时前
JavaScript Notifications API:告别alert弹窗,开启沉浸式用户体验革命!
开发语言·javascript·ux
钝挫力PROGRAMER1 小时前
Vue中选项式和组合式API的学习
javascript·vue.js