Vue之事件处理(v-on)

news/2024/12/22 16:33:52/

文章目录

  • 前言
  • 一、v-on基本使用
  • 二、使用举例
    • 1.传参和不传参使用
    • 2.$event占位代表事件对象
    • 3.函数用箭头函数时this作用域
    • 4.正常未用箭头函数的this指向(与未用箭头函数作比较)
  • 总结


前言

v-on:事件绑定


一、v-on基本使用

  • 格式:<标签 v-on:事件=“函数名”></标签><标签 @事件=“函数名”></标签>
  • 事件的回调需要配置在methods对象中,最终会在Vue实例上。
  • methods中配置的函数,不要用箭头函数!否则this指向的就不是Vue实例了。指向的就是Vue实例外层最近作用域(window)
  • methods中配置的函数,都是被Vue所管理的函数,this指向的是Vue实例对象或组件实例对象。
  • @click="函数名($event)"中 $event是占位,代表事件event对象。

二、使用举例

1.传参和不传参使用

代码如下(示例):

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script type="text/javascript" src="../js/vue.js"></script>
</head><body><div id="root"><!-- <button v-on:click="show">点击我(传参)</button> --><button @click="show1()">点击我(传参)</button><button @click="show2(123)">点击我(不传参)</button></div><script>var vm = new Vue({el: "#root",methods: {show1() {alert("你好!");},show2(num) {alert("你好!!" + num);}}})console.log(vm);</script>
</body></html>

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

2.$event占位代表事件对象

代码如下(示例):

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script type="text/javascript" src="../js/vue.js"></script>
</head><body><div id="root"><button @click="show(123,$event)">点击我</button></div><script>var vm = new Vue({el: "#root",methods: {show(num, e) {console.log(num);console.log(e);}}})console.log(vm);</script>
</body></html>

在这里插入图片描述

3.函数用箭头函数时this作用域

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script type="text/javascript" src="../js/vue.js"></script>
</head><body><div id="root"><button @click="show">点击我</button></div><script>var vm = new Vue({el: "#root",methods: {show: () => {console.log(this);}}})console.log(vm);</script>
</body></html>

在这里插入图片描述

4.正常未用箭头函数的this指向(与未用箭头函数作比较)

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script type="text/javascript" src="../js/vue.js"></script>
</head><body><div id="root"><button @click="show">点击我</button></div><script>var vm = new Vue({el: "#root",methods: {show() {console.log(this);}}})console.log(vm);</script>
</body></html>

在这里插入图片描述


总结

以上就是事件处理的讲解。


http://www.ppmy.cn/news/611863.html

相关文章

java自增运算符与自减运算符

&#xff1a;自增运算法 -- &#xff1a;自减运算法 一般为了方便记忆 把放在 前面的a 成为前 放到后面的a成为后 a 先1 在运算 a 先运算在 例如&#xff1a; x 2 * m先运行 m m 1; 再运行 x 2 * m; (前) x 2 * m ;先运行 x 2 * m; 再运行 m m 1;&#xff08;后…

走进人工智能,认识机器学习

网上有各种对人工智能的介绍&#xff0c;人工智能是一个很大的圈子&#xff0c;这里只是感性上初步介绍怎样入门人工智能这一有趣的前沿科技&#xff0c;人工智能基础必然是机器学习。 机器学习&#xff0c;大概就是说你告诉机器你想做什么&#xff1f;并且给它一堆数据让它去…

centos7下安装docker

地址: https://www.cnblogs.com/qgc1995/archive/2018/08/29/9553572.html 转载于:https://www.cnblogs.com/perTest/p/10375984.html

java重写与重载

学而时习之&#xff0c;温故而知新。 重载 &#xff08;overload&#xff09;&#xff1a; 是在一个类里面&#xff0c;方法名字相同&#xff0c;而参数不同。返回类型可以相同也可以不同。 图片转载地址 重写&#xff08;Override&#xff09;是父类与子类之间的多态性&…

MLPerf结果证实至强® 可有效助力深度学习训练

MLPerf结果证实至强 可有效助力深度学习训练 核心与视觉计算事业部副总裁Wei Li通过博客回顾了英特尔这几年为提升深度学习性能所做的努力。 目前根据英特尔 至强 可扩展处理器的MLPerf结果显示&#xff0c;英特尔 至强可扩展处理器已超出性能阈值&#xff0c;对于希望在基…

C++:命名空间

1&#xff0c;命名空间简介 命名空间随标准C而引入&#xff0c;相当于一个灵活的文件域&#xff08;全局域&#xff09;&#xff0c;以关键字namespace开头给其起个名字&#xff0c;并用大括号把定义区域括起来&#xff08;声明块&#xff09;。 在域外使用域内成员时&#xf…

一个整型数组里除了两个数字之外,其他的数字都出现了两次

题目&#xff1a; 一个整型数组里除了两个数字之外&#xff0c;其他的数字都出现了两次 解答&#xff1a; 我们从头到尾异或数组中的每个数字&#xff0c;那么最终的结果是两个只出现一次数字的异或的结果&#xff0c;由于两个数字不一样&#xff0c;那么异或的结果肯定不为0&a…

资源调度框架 YARN

3.1.1 什么是YARN Yet Another Resource Negotiator, 另一种资源协调者通用资源管理系统为上层应用提供统一的资源管理和调度&#xff0c;为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处 3.1.2 YARN产生背景 通用资源管理系统 Hadoop数据分布式存储&#xff08…