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)

相关推荐
速易达网络10 小时前
Bootstrap 5 响应式网站首页模板
前端·bootstrap·html
etsuyou10 小时前
js前端this指向规则
开发语言·前端·javascript
lichong95110 小时前
Android studio 修改包名
android·java·前端·ide·android studio·大前端·大前端++
cai_huaer10 小时前
BugKu Web渗透之 cookiesWEB
前端·web安全
lichong95110 小时前
Git 检出到HEAD 再修改提交commit 会消失解决方案
java·前端·git·python·github·大前端·大前端++
友友马10 小时前
『 QT 』QT控件属性全解析 (一)
开发语言·前端·qt
不想上班只想要钱11 小时前
vue3+vite创建的项目,运行后没有 Network地址
前端·javascript·vue.js
流***陌11 小时前
手办盲盒抽赏小程序前端功能设计:兼顾收藏需求与抽赏乐趣
前端·小程序
岁月宁静11 小时前
在富文本编辑器中封装实用的 AI 写作助手功能
前端·vue.js·人工智能
金士顿12 小时前
为什么MainWindow.xaml绑定的datacontext,EtherCATSuiteCtrl.xaml直接用了?
前端