一个项目学习Vue3---事件处理

news2024/9/28 3:21:19

学习下面代码,了解Vue3的事件处理

<!--条件和列表渲染-->
<template>
    <el-button v-on:click="countAdd" type="primary">count={{ count }}</el-button>
    <el-button @click="countAdd" type="primary">count={{ count }}</el-button>
    <el-button @click="speak('你好!')" type="primary">说你好!</el-button>
    <el-button @click="eventClick('李四',$.event)" type="primary">获取事件,更改下面div的值</el-button>
    <div id="changeName">张三</div>

</template>
<script lang="ts" setup>
import { computed, nextTick } from 'vue'
import { ref } from 'vue'
import { reactive } from 'vue'
import { ElMessage } from 'element-plus'
import $ from 'jquery'
const count = ref(0);
  
function countAdd(){
   count.value += 1
}

function speak(context){
    ElMessage.success(context)
}

function eventClick(message,event){
    ElMessage.success(message)
    if (event) {
        event.preventDefault()
    }
    $("#changeName").text(message)
}
</script>
<style scoped>
</style>

在Vue 3中,事件处理是构建交互式Web应用程序中至关重要的部分。Vue 3提供了多种方式来处理事件,从简单的点击事件到复杂的自定义事件处理逻辑,都可以通过Vue的语法和特性来实现。本文将深入探讨Vue 3中事件处理的基础知识和实际应用。

基本的点击事件处理

在Vue 3中,可以通过@clickv-on:click来绑定点击事件处理函数。例如:

<template>
    <el-button @click="countAdd" type="primary">count={{ count }}</el-button>
</template>
<script setup lang="ts">
import { ref } from 'vue'

const count = ref(0);

function countAdd() {
    count.value += 1;
}
</script>

上述代码中,@click="countAdd"绑定了一个点击事件处理函数countAdd,每次点击按钮时,count的值会自增并更新视图。

参数传递与事件修饰符

Vue 3支持向事件处理函数传递参数以及使用事件修饰符来更灵活地控制事件行为。例如:

<template>
    <el-button @click="speak('你好!')" type="primary">说你好!</el-button>
</template>
<script setup lang="ts">
import { ElMessage } from 'element-plus'

function speak(context: string) {
    ElMessage.success(context);
}
</script>

 

在上述示例中,点击按钮后将调用speak函数,并显示一个成功消息框,内容为"你好!"。

访问原生事件对象

有时需要访问原生事件对象,例如阻止默认行为或获取更多事件信息。Vue 3可以通过特定语法实现这一点:

<template>
    <el-button @click="eventClick('李四', $event)" type="primary">获取事件,更改下面div的值</el-button>
    <div id="changeName">张三</div>
</template>
<script setup lang="ts">
import { ElMessage } from 'element-plus'
import $ from 'jquery'

function eventClick(message: string, event: MouseEvent) {
    ElMessage.success(message);
    event.preventDefault(); // 阻止默认事件
    $("#changeName").text(message); // 更改DOM元素内容
}
</script>

在这个例子中,通过$event传递事件对象,可以在事件处理函数中访问到原生的事件对象,并进行相应的操作,如阻止默认事件和修改DOM元素内容。

总结

通过本文,我们详细介绍了Vue 3中事件处理的基础知识和高级用法。Vue 3提供了强大且灵活的事件处理机制,使得开发者可以轻松地实现各种用户交互功能。从简单的点击事件到复杂的事件传递和事件修饰符,Vue 3都能满足不同场景下的需求,是现代Web应用开发中不可或缺的一部分。

希望本文能够帮助您更好地理解和应用Vue 3中的事件处理机制,提升您的Vue开发技能!

 关注公众号:资小库,问题快速答疑解惑

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1914268.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

人工智能算法工程师(中级)课程3-sklearn机器学习之数据处理与代码详解

大家好&#xff0c;我是微学AI,今天给大家分享一下人工智能算法工程师(中级)课程3-sklearn机器学习之数据处理与代码详解。 Sklearn&#xff08;Scikit-learn&#xff09;是一个基于Python的开源机器学习库&#xff0c;它提供了简单有效的数据挖掘和数据分析工具。Sklearn包含了…

AI绘画工具Stable Diffusion神级插件InstantID,AI换脸完美版!

随着AI绘画技术的不断迭代&#xff0c;AI换脸也日臻完美。 从路线上看&#xff0c;主要有两条路线&#xff0c;一是一张图换脸&#xff0c;优点是操作简便&#xff0c;缺点是换个姿势的时候&#xff0c;往往不太像&#xff0c;roop等插件是基于这个思路&#xff1b;二是炼制专…

ArcGis将同一图层的多个面要素合并为一个面要素

这里写自定义目录标题 1.加载面要素的shp数据 2.点击菜单栏的地理处理–融合&#xff0c;如下所示&#xff1a; 3.将shp面要素输入&#xff0c;并设置输出&#xff0c;点击确定即可合并。合并后的属性表就只有一个数据了。

【内网渗透】MSF渗透阶段的常用指令笔记

目录 渗透阶段划分 msfvenom 常用参数 各平台生成payload命令 Meterpreter Meterpreter的常用命令 基本命令 常用命令 针对安卓手机的一些命令 针对Windows的一些命令 文件系统命令 生成木马反弹shell(以linux靶机为例) 木马生成 配置监控 攻击利用 辅助模块 怎…

【鸿蒙学习笔记】UIAbility组件概述

官方文档&#xff1a;UIAbility组件 目录标题 UIAbility组件概述 [Q&A] 什么是UIAbility&#xff1f;声明周期UIAbility组件-启动模式UIAbility组件-与UI的数据同步 UIAbility组件概述 [Q&A] 什么是UIAbility&#xff1f; UIAbility组件是一种包含UI界面的应用组件&a…

53-5 内网代理7 - CS上线不出网主机

靶场搭建: 这里就用之前内网代理的靶场,把web服务器这台虚拟机关闭掉,用剩下的3台加kali 各个虚拟机的网络情况 kali - 可以连接外网win2008(之前的FTP服务器) 可以连接外网 win 7(之前的办公电脑) 不出网主机 - 无法连接外网win2012 克隆机(之前的域控) - 无法连接…

智能客服不走寻常路:服务也能这么“潮”!

在这个科技爆炸的时代&#xff0c;智能客服已经不仅仅是一个冷冰冰的机器人&#xff0c;而是变成了企业形象的代言人。 想象一下&#xff0c;当客户与智能客服交流时&#xff0c;感觉就像在和一个有趣、幽默、又懂得解决问题的朋友聊天&#xff0c;这种体验是不是瞬间拉近了客…

门墙柜加工中心是做什么的?

门墙柜加工中心&#xff0c;带有六工序自动换刀&#xff0c;是一款主要针对门板、衣柜门板、墙板扣件等工件的加工设备。 它可以实现多种加工工艺&#xff0c;如侧孔、三合一、隐性件等连接件&#xff0c;铰链孔&#xff0c;天地铰链槽、门锁孔槽、免拉手槽、海棠槽、灯槽、拉…

秋招突击——7/9——字节面经

文章目录 引言正文八股MySQL熟悉吗&#xff1f;讲一下MySQL索引的结构&#xff1f;追问&#xff1a;MySQL为什么要使用B树&#xff1f;在使用MySQL的时候&#xff0c;如何避免索引失效&#xff1f;讲一下MySQL的事物有哪几种特征&#xff1f;MySQL的原子性可以实现什么效果&…

为什么使用 Lumion 3D 渲染软件进行建筑可视化?

如今&#xff0c;建筑可视化的需求量很大。一些报告指出&#xff0c;到 2025 年&#xff0c;建筑可视化作品的市场规模可能达到 57.2 亿美元。这只能说明 3D 渲染和建筑可视化在当今的重要性日益增加。如今&#xff0c;它已成为广告、营销、沟通等诸多领域前所未有的工具。 Lu…

从生物学到机械:人眼如何为机器人视觉系统提供无尽灵感?

人眼激发了相机机制的发展&#xff0c;该机制改善了机器人对周围世界的观察和反应方式。 该摄像头系统由马里兰大学&#xff08;UMD&#xff09;计算机科学家领导的团队开发&#xff0c;模仿人眼用于保持清晰稳定的视力的不自主运动。 该团队对相机的原型设计和测试称为…

【网络安全】Oracle:SSRF获取元数据

未经许可&#xff0c;不得转载。 文章目录 前言正文漏洞利用 前言 Acme 是一家广受欢迎的播客托管公司&#xff0c;拥有庞大的客户群体。与许多大型运营公司一样&#xff0c;Acme 采用了Apiary的服务&#xff0c;使用户能够安全高效地管理他们的播客。 Apiary 于2017年初被Or…

[Linux安全运维] Linux用户以及权限管理

Linux用户以及权限管理 Linux用户和组 用户信息文件pasawd /etc/passwd文件用于存储用户的信息 :用于分割不同的字段信息 字段示例&#xff08;第一行&#xff09;含义说明1root用户名2x密码占位符x代表用户有密码存储在shadow文件中无内容代表用户登录系统不需要密码30UID…

Elastic Stack--15--聚合查询(SUM、MAX、MIN、AVG)案例

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 ES的聚合查询(SUM、MAX、MIN、AVG)1.求和查询2.求平均值3.最大最小值查询4.唯一值查询 (类似于sql中的distinct 去重)5.stats聚合 ES的聚合查询(SUM、MAX、MIN、AVG…

Ubuntu22.04.4系统/安装python3.9/pytorch/torchvision【GPU版】

1.安装python3.9 1.1 创建python3.9的虚拟环境 conda create -n QwenChat python3.9 1.2 输入“y” 1.3 创建成功 2.安装pytorch和torchvision 2.1 进入虚拟环境 进入刚刚创建的虚拟环境 conda activate QwenChat 2.2 conda安装 查看cuda的版本 浏览器打开网址PyTorch鼠标往…

Matlab方差分析

为了使生产过程稳定&#xff0c;达到优质、高产&#xff0c;需要对影响产品质量的因素进 行分析&#xff0c;找出有显著影响的那些因素&#xff0c;除了从机理方面进行研究外&#xff0c;常常要作许多试验&#xff0c; 对结果作分析、比较&#xff0c;寻求规律。用数理统计分析…

JVM是如何创建一个对象的?

哈喽&#xff0c;大家好&#x1f389;&#xff0c;我是世杰。 本文我为大家介绍面试官经常考察的**「Java对象创建流程」** 照例在开头留一些面试考察内容~~ 面试连环call Java对象创建的流程是什么样?JVM执行new关键字时都有哪些操作?JVM在频繁创建对象时&#xff0c;如何…

大连网站制作需要注意哪些问题

在制作大连网站时&#xff0c;需要注意以下几个问题&#xff1a; 1. 目标受众&#xff1a;首先要明确网站的目标受众是谁&#xff0c;根据受众的特点和需求来设计网站的内容和结构。比如&#xff0c;如果目标受众是年轻人&#xff0c;网站的设计风格可以更加时尚和前卫&#xf…

windwos下mysql的udf提权

MySql UDF提权介绍 UDF(User Defined Functions)即用户自定义函数&#xff0c;通过这种方式可以实现命令执行&#xff0c;其原理是通过lib_mysqludf_sys提供的函数可以执行系统命令 攻击场景:同之前利用日志写WebShell的场景&#xff0c;即堆叠注入或MySQL终端权限或类似phpMy…

使用Vue3、Pinia和Vite5打造高度还原的抖音仿制项目

douyin-vue 是一个模仿 抖音|TikTok 的移动端短视频项目。Vue 在移动端的"最佳实践"&#xff0c;媲美原生 App 丝滑流畅的使用体验。使用了最新的 Vue 技术栈&#xff0c;基于 Vue3、Vite5 、Pinia实现。数据保存在项目本地&#xff0c;通过 axios-mock-adapter 库拦…