【Vue】Vue3.0(二十一)Vue 3.0中 的$event使用示例

  1. 概念
    • 在Vue 3.0中,$event是一个特殊的变量,它用于在事件处理函数中访问原生的DOM事件对象。这个变量主要在模板中的内联事件处理中使用,当一个事件被触发时(比如clickinput等事件),$event就代表了这个事件对应的原生DOM事件。
  2. 使用场景和示例
    • 基本事件处理
      • 例如,在一个简单的按钮点击事件中,如果想要访问鼠标点击事件的一些原生属性,如clientXclientY(鼠标指针在浏览器可视区域中的水平和垂直坐标),可以使用$event
<template>
  <button @click="handleClick">点击我</button>
</template>

<script setup>
const handleClick = (e) => {
  console.log('鼠标点击位置:', e.clientX, e.clientY);
};
</script>

在这个例子中,e就是$event,它被传递给handleClick函数,这样就可以在函数内部访问鼠标点击的原生事件对象的属性。

  • 表单输入事件
    • 对于表单元素的事件处理,$event也很有用。比如在一个input框的input事件中,可以通过$event获取用户输入的最新值。
<template>
  <input type="text" @input="handleInput" />
</template>

<script setup>
const handleInput = (e) => {
  console.log('用户输入的内容:', e.target.value);
};
</script>

这里的e.target.value通过$event(也就是e)访问了input框中用户输入的最新文本内容。

  • 自定义组件事件传递
    • 当在自定义组件中触发事件并传递数据时,$event可以用来接收传递的数据。假设一个自定义组件MyComponent会在某个操作后触发一个自定义事件custom - event并传递一个数据对象。
<template>
  <MyComponent @custom - event="handleCustomEvent" />
</template>

<script setup>
import MyComponent from './MyComponent.vue';
const handleCustomEvent = (data) => {
  console.log('接收到自定义组件传递的数据:', data);
};
</script>

在这种情况下,data就是$event,它包含了自定义组件通过$emit传递的数据。

需要注意的是,在使用$event时,要确保事件处理函数的参数顺序和类型与实际需求相符,以便正确地获取和使用事件相关的信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

执键行天涯、

码你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值