vue3里面,事件触发一次,方法执行多次

这个bug也是我在v2升v3的时候,根据上一个前端写的代码,发现的问题

现在我们两个组件,父组件 parent 和子组件 son,如果我们在父组件中引入自助件的时候,给他命名是驼峰命名法,然后父组件中又有一个方法和子组件的名字类似,就是驼峰的不一样而已,就可能会出现这种问题

下面来看一下代码

父组件 parent:

复制代码
<script setup lang="ts">
// 注意这里关于子组件的命名
import TeSt from './son.vue'
import { ref } from 'vue'

const someVisible = ref(false)

// 定义的方法名 是 teSt,和子组件的名字 TeSt 只是驼峰的不一样
const teSt = (params: any) => {
  console.log(params, '点击了按钮')
  someVisible.value = !someVisible.value
}
</script>
<template>
  <div>
    <el-button @click="teSt">点击的按钮</el-button>

    <el-dialog v-model="someVisible" title="Tips" width="500">
      <div>
        <!-- 使用子组件 -->
        <te-st />
      </div>
    </el-dialog>
  </div>
</template>

<style lang="less" scoped></style>

子组件的代码:

复制代码
<script setup lang="ts">
import { ref } from 'vue'

const num = ref(0)
</script>

<template>
  <div>
    <h1>{{ num }}</h1>
  </div>
</template>

<style lang="less" scoped></style>

此时当点击按钮触发 teSt 方法的时候,就会执行多次

相关推荐
m0_7482523823 分钟前
JavaScript 基本语法
开发语言·javascript·ecmascript
hhcccchh39 分钟前
学习vue第十三天 Vue3组件深入指南:组件的艺术与科学
javascript·vue.js·学习
@PHARAOH43 分钟前
WHAT - Vercel react-best-practices 系列(二)
前端·javascript·react.js
qq_4061761443 分钟前
深入理解 JavaScript 闭包:从原理到实战避坑
开发语言·前端·javascript
float_六七1 小时前
JavaScript变量声明:var的奥秘
开发语言·前端·javascript
zhengxianyi5151 小时前
ruoyi-vue-pro本地环境搭建(超级详细,带异常处理)
前端·vue.js·前后端分离·ruoyi-vue-pro
研☆香1 小时前
JavaScript 特点介绍
开发语言·javascript·ecmascript
绝美焦栖1 小时前
低版本pdfjs升级
前端·javascript·vue.js
卤蛋fg62 小时前
vue 可视化表单设计器 vxe-form-design 创建自定义控件的详细用法(教程一)
vue.js
迦南giser2 小时前
webpack从0到1详解
前端·javascript·css·webpack·node.js