Vue关于子级组件向父级组件传值调用$emit函数不能够使用驼峰命名法

问题描术

若在父组件parent中调用子组件child,父组件有写好的getData()方法。

javascript 复制代码
methods: {
       getData(data) {
          console.log(data);
         }
   },

父组件引入子组件代码出下:

parent.vue

html 复制代码
<child ref="child" @getData="getData"/>

在子组件child中使用

child.vue

javascript 复制代码
methods: {
       sendData() {
           this.$emit('getData',"Child data")
          // console.log('触发');
       }
   },

此时的调用并不起作用

原因

原因是DOM的标准与js的不一样,对大小写不敏感。

解决方案

需将驼峰命名法更改为以连字符-互相连接的小写字母串。

parent.vue

html 复制代码
<child ref="child" @get-data="getData"/>

在子组件child中使用

child.vue

javascript 复制代码
methods: {
       sendData() {
           this.$emit('get-data',"Child data")
          // console.log('触发');
       }
   },
相关推荐
故作春风1 分钟前
手把手实现一个前端 AI 编程助手:从 MCP 思想到 VS Code 插件实战
前端·人工智能
不会算法的小灰9 分钟前
Vue.js 基础教程:从入门到实践
前端·javascript·vue.js
掘金一周12 分钟前
没开玩笑,全框架支持的 dialog 组件,支持响应式| 掘金一周 11.6
前端·人工智能
拉不动的猪26 分钟前
浏览器&Websocket&热更新
前端·javascript·vue.js
那些免费的砖36 分钟前
Reka UI - 一款免费开源的 Vue 无头 UI 组件库,样式定制开发项目的绝佳选择
vue.js·ui·开源
Never_Satisfied1 小时前
在JavaScript中,将包含HTML实体字符的字符串转换为普通字符
开发语言·javascript·html
im_AMBER1 小时前
React 12
前端·javascript·笔记·学习·react.js·前端框架
开开心心就好1 小时前
电脑音质提升:杜比全景声安装详细教程
java·开发语言·前端·数据库·电脑·ruby·1024程序员节
午安~婉1 小时前
HTML CSS八股
前端·css·html
有事没事实验室1 小时前
css变量
前端·css