Vue事件处理的基本使用
创始人
2024-04-30 05:20:16
0

前言

事件处理在vue中也是非常重要的一项技术,它类似于js的事件处理,但是也有不同,下面就简单介绍一下在vue中如何进行事件使用以及一些要点

1 事件基本使用

在这里我们使用单击事件为例,简单讲讲在vue中单击事件的编写以及细节问题

在vue中想要实现点击事件,需要新增一个指令:v-on:click,后面跟对应的函数


对于这个函数的编写,也是有讲究的,如果按照下图直接按照传统函数JS编写会报错
在这里插入图片描述
在这里插入图片描述
因为vue实例读取不到这个函数,我们需要配置methods属性,把事件的回调写到里面
在这里插入图片描述
再次运行,完美解决
在这里插入图片描述
其他回调函数也是一样的写法,都要写在vue的属性methods里面,让vue可以读取到这个回调函数

2 验证问题(是否可以传参和this的指向)

基本的事件使用之后,会有两个疑问:

1 回调函数是否可以传参

2 回调函数里面的this是什么

下面一一验证
在这里插入图片描述
验证1:发现只能接受到第一个参数,第一个参数就是调用函数本身的元素,我们通过这个元素获取到了它对应的文本

验证2:函数里面当前的this就是vue实例对象
在这里插入图片描述

3 事件指向this原则

当我们写vue回调函数的时候,最好不要写成箭头函数,不然这个this就不是vue实例对象,而是全局的window对象

所有被vue管理的函数,最好都要写普通函数,不要写成剪头函数,不然就使用不了this了
在这里插入图片描述
在这里插入图片描述
所以有一个原则:所有被vue管理的函数,最好都要写普通函数,不要写成剪头函数,不然就使用不了this了

4 事件简写模式

v-on-click可以简写成@click,效果是一样的(v-on=@),由于后者编写比较简便,通常后者使用的更多

在这里插入图片描述
在这里插入图片描述

5 自由传参以及参数占位符

如果我们想传参,比如点击删除按钮,需要吧id传到函数里面,我们可以在方法后跟参数

但是这样就收不到event了
在这里插入图片描述
在这里插入图片描述
但是这样就收不到event了
在这里插入图片描述
在这里插入图片描述
那么这个问题怎么解决呢?其实vue提供了占位符可以给供我们使用

注意:$event是vue的关键字,只能这么写,不然识别不出来,而且参数顺序必须对上!
在这里插入图片描述

6总结

1 使用v-on:xxx或者简写成@xxx绑定事件,其中xxx是事件名称

2 事件的回调需要配置在methods对象中,最终会在vm上

3 methods中配置的函数,不要用箭头函数!否则this就不是vm了

4 methods中配置的函数,都是被vue管理的函数,this的指向是vm或组件实例对象

5 @click="xxx"和@click="xxx(100,event)"效果是一样的,但是后者可以传参,可以用event)"效果是一样的,但是后者可以传参,可以用event)"效果是一样的,但是后者可以传参,可以用event作为参数占位符,需要注意传参和接受参数的顺序是否一致

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...