在前端开发中,我们需要经常和用户交互,这个时候,我们就必须监听用户发生的事件,比如点击、拖拽、键盘事件等等

v-on 基础

<div id='app'><h2>{{counter}}</h2><button v-on:click="add">+</button><!-- v-on语法糖写法 @ --><button @click="sub">-</button>
</div><script>const app = new Vue({el: '#app',data: {counter: 0,},methods:{add(){this.counter++;},sub(){this.counter--;}}})
</script>
</script>

v-on 参数

  • 当通过methods中定义方法,以供@click调用时,需要注意参数问题
  • 情况一:如果该方法不需要额外参数,那么方法后的()可以不添加;但是注意:如果方法本身中有一个参数,那么会默认将原生事件event参数传递进去
  • 情况二:如果需要同时传入某个参数,同时需要event时,可以通过$event传入事件
<div id='app'><!-- 事件调用的方法没有参数 --><button @click="btnClick1()">按钮1</button><button @click="btnClick1">按钮11</button><!-- 在事件定义时,写函数时省略了小括号,但是方法本身是需要一个参数的 这个时候,vue会默认将浏览器生成的event事件对象作为参数传入到方法--><button @click="btnClick2(123)">按钮2</button><button @click="btnClick2()">按钮22</button><button @click="btnClick2">按钮222</button><!-- 在方法定义时,需要event对象,同时又需要其他参数 --><!-- 再调用方法时,如何手动的获取到浏览器参数的event对象:$event --><button @click="btnClick3(123, $event)">按钮3</button>
</div><script>const app = new Vue({el: '#app',data: {counter: 0,},methods:{btnClick1(){console.log("btnClick1");},btnClick2(event){console.log("------------", event);},btnClick3(abc, event){console.log(abc , "-----" , event);}}})
</script>

v-on 修饰符

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Vuejs</title><script src="js/vue.js"></script><style>div{widows: 100px;height: 100px;background: red;}</style>
</head>
<body>
<div id='app'><!-- 1、.stop修饰符:阻止事件冒泡 --><div @click="divClick"><button @click.stop="btnClick">按钮</button></div><br><!-- 2、 .prevent修饰符:阻止事件默认事件 --><form action="breezy"><!-- 阻止了submit自动提交 --><input type="submit" value="提交" @click.prevent="submitClick"></form><br><!-- 3、 .{keyCode |键别名}:监听某个键盘的键帽,当该键触发时,才执行函数--><input type="text" @keyup.enter="keyUp"><br><!-- 4、.once修饰符:只触发一次回调 --><button @click.once="btn2Click">只能点击一次</button>
</div><script>const app = new Vue({el: '#app',data: {counter: 0,},methods:{btnClick(){console.log("btnClick");},divClick(){console.log("divClick");},submitClick(){console.log("submitClick");console.log("submitClick");console.log("submitClick");console.log("submitClick");console.log("submitClick");},keyUp(){console.log("keyUp");},btn2Click(){console.log("once....");}}})
</script></body>
</html>

Vuejs 事件监听相关推荐

  1. vue 键盘事件监听

    原文链接: vue 键盘事件监听 上一篇: 使用环形队列触发延时任务 下一篇: vue 一次失败的dom游戏制作 参考 https://cn.vuejs.org/v2/guide/events.htm ...

  2. js 监听 安卓事件_百行代码实现js事件监听实现跨页面数据传输

    百行代码实现js事件监听实现跨页面数据传输 使用场景 类似消息队列的使用场景,支持同页面和跨页面通信,发送消息和接收消息 技术原理 跨页面通信: 基于事件监听,通过监听 storage事件监听回调机制 ...

  3. 11-flutter事件监听

    事件监听 1 本身支持事件检测,就可以直接使用onpress body:Center(child: RaisedButton(child: Text("Click"),onPres ...

  4. 从jQuery的缓存到事件监听

    很久以前,我还在cnblogs里面逛的时候就提出过一个问题(刚找了半天没找到).不知道大家有没有发现,用jQuery选择器"选择"之后的DOM上会添加jQuery********* ...

  5. java中事件监听_Java中的事件监听机制

    鼠标事件监听机制的三个方面: 1.事件源对象: 事件源对象就是能够产生动作的对象.在Java语言中所有的容器组件和元素组件都是事件监听中的事件源对象.Java中根据事件的动作来区分不同的事件源对象,动 ...

  6. layui监听当前页_事件监听 · layui使用手册 · 看云

    # 事件监听 语法:form.on('event(过滤器值)', callback); form模块在 layui 事件机制中注册了专属事件,所以当你使用layui.onevent()自定义模块事件时 ...

  7. Java中事件监听机制

    Java中事件监听机制 一.事件监听机制的定义 要想了解Java中的事件监听机制,首先就要去了解一下在Java中事件是怎样去定义的呢!在使用Java编写好一个界面后,我们就会对界面进行一些操作,比如, ...

  8. 关于事件监听机制的总结(Listener和Adapter)

    记得以前看过事件监听机制背后也是有一种设计模式的.(设计模式的名字记不清了,只记得背后实现的数据结构是数组.) 附上事件监听机制的分析图: 一个事件源可以承载多个事件(只要这个事件源支持这个事件就可以 ...

  9. Jquery系列:checkbox 获取值、选中、设置值、事件监听等操作

    <div id="divId" class="divTable"><div class="tableBody">&l ...

最新文章

  1. php无限极下拉框,php递归实现无限分类生成下拉列表的函数
  2. 中科院基因组所高远组诚聘生物信息学方向助理/副研及博士
  3. [Hadoop][Zookeeper]Cluster + HA
  4. JDK/Java 14 正式发布!然而我还在用 Java 8...
  5. uos系统断网怎么安装mysql_【学习笔记】 UOS安装MySQL
  6. 通过rxjs的一个例子, 来学习SwitchMap的使用方法
  7. 帝国cms 未审核 showinfo.php,帝国CMS批量修改文章未审核状态及批量修改上线时间...
  8. js多种方法:返回上一页
  9. spark的rdd的含义_Spark里边:到底是什么RDD
  10. android sqlite使用之模糊查询数据库数据的三种方式
  11. win7服务器 能否建立多个网站,windows7下weblogic10.3服务器下一个domain建多个server(端口)...
  12. git提交本地代码到新分支
  13. 16.企业应用架构模式 --- 离线并发模式
  14. 深度学习图像识别笔记(二):红外图像
  15. 数据分析师与数据科学家的区别
  16. EXCEL:NUMBERVALUE函数的用法
  17. 读书笔记:《Scrum 敏捷软件开发》
  18. 2022年全国职业院校技能大赛(高职组)
  19. lucene高亮显示
  20. Ctdb Rados(二):多场景断网高可用

热门文章

  1. 保存时间 默认_操作技能|WORD文档没保存,有办法恢复吗?
  2. python2还能用吗_官方推荐python3,为何还有人在用python2呢?
  3. 是谁干的 linux找嫌疑人
  4. Windows Server 2008 R2无法远程桌面解决方法
  5. jupyternotebook 报告_基本操作!在VS 代码中如何使用Jupyter Notebook
  6. 前端如何玩转虚拟机_想运行虚拟机,用win10自带的Hyper-V即可,不用安装其它软件...
  7. webpack 配置 react-pro
  8. Leetcode883.Projection Area of 3D Shapes三维形体投影面积
  9. 安全多方计算(MPC)从入门到精通:简易教程
  10. Web Service/WCF 部署注意事项。