v-on精炼
v-on的介绍
- 在Vue中,常使用v-on指令用于监听事件的发生,v-on指令就类似于JavaScript中的addEvelistener()方法
v-on的基本使用
<div id="app">
<h2>{{counter}}</h2>
<!-- 监听一个click鼠标点击事件 -->
<button v-on:click="increment">+</button>
<!-- v-on:的语法糖写法@ -->
<button @click="decrement">-</button>
</div>
<script type="text/javascript">
const app = new Vue({
el: '#app',
data: {
counter: 0
},
methods: {
increment() {
this.counter++;
},
decrement() {
this.counter--;
}
}
})
</script>
v-on参数传递问题
- 当通过methods中定义方法,以供@click调用时,需要注意参数问题:
- 如果该方法不需要额外参数,可以省略方法后的()
- 默认会将原生事件event作为额外参数传递进去
<button @click="btn2Click">按钮2</button>
<button @click="btn3Click(123)">按钮3</button>
<script type="text/javascript">
const app = new Vue({
methods: {
btn2Click(event) {
console.log('..........', event); //MouseEvent {...}
},
btn3Click(a,event) {
console.log('..........', a, event); //123,MouseEvent {...}
},
btn3Click(a) {
console.log('..........', a); //123
}
}
})
</script>
v-on修饰符
- Vue为我们提供了修饰符,这些修饰符可以帮助我们更方便的处理一些事件
①.stop
- 阻止冒泡
- 事件默认会由内向外依次触发。绑定.stop修饰符前,点击按钮后控制台会依次输出btnClick、keyUp、divClick,绑定.stop修饰符后,会阻止冒泡,因此控制台只会输出btnClick
<div id="app" @click="divClick" :style="{height:'400px', width:'400px', border:'1px solid green'}">
<!-- 当点击按钮时,不会触发div的事件 -->
<div @click="keyup" :style="{height:'200px', width:'200px', border:'1px solid red'}">
<button @click.stop="btnClick">按钮</button>
</div>
</div>
<script type="text/javascript">
const app = new Vue({
methods: {
divClick(){
console.log('divClick');
},
btnClick(){
console.log('btnClick');
},
submitClick(){
console.log('submitClick');
},
keyup(){
console.log('keyUp');
}
}
})
</script>
②.prevent
- 阻止浏览器默认行为
- 当点击提交按钮时,浏览器会默认将数据提交到服务器,绑定修饰符prevent后可以阻止这个默认行为,数据便能正常输出到控制台
<div>
<form action="baidu">
<input type="submit" value="提交" @click.prevent="submitClick"/>
</form>
</div>
③.{keyCode | keyAlias}
- 监听键盘的键帽,当特定按键按下时触发
<!-- 当按下回车键才会触发keyUp事件 -->
<input type="text" @keyup.enter="keyUp"/>
<input type="text" @keyup.13="keyUp"/>
④ .once
- 只会触发一次回调
<!-- btn2Click事件只会触发一次 -->
<button @click.once="btn2Click">按钮2</button>
⑤.native
监听组件根元素的原生事件,可以使组件同样可以监听事件
<!-- 点击组件back-top时也会触发backClick事件 -->
<back-top @click.native="backClick"></back-top>
v-on精炼的更多相关文章
- 合金装备V 幻痛 制作技术特辑
合金装备V:幻痛 制作特辑 资料原文出自日版CGWORLD2015年10月号 在[合金装备4(Metal Gear Solid IV)]7年后,序章作品[合金装备5 :原爆点 (Metal Gea ...
- J a v a 的“多重继承”
接口只是比抽象类“更纯”的一种形式.它的用途并不止那些.由于接口根本没有具体的实施细节——也就是说,没有与存储空间与“接口”关联在一起——所以没有任何办法可以防止多个接口合并到一起.这一点是至关重要的 ...
- Exception in thread "main" java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(I)V
在学习CGlib动态代理时,遇到如下错误: Exception in thread "main" java.lang.NoSuchMethodError: org.objectwe ...
- [Erlang 0118] Erlang 杂记 V
我在知乎回答问题不多,这个问题: "对你职业生涯帮助最大的习惯是什么?它是如何帮助你的?",我还是主动回答了一下. 做笔记 一开始笔记软件做的不好的时候就发邮件给自己, ...
- v$session中server为none与shared值解析
查询V$SESSION,你会看到SERVER可能会有DEDICATED| SHARED| PSEUDO| NONE 四种值,如果SERVER字段的值除了DEDICATED,还有NONE,则说明当前实例 ...
- 引用js或css后加?v= 版本号的用法
<span style="font-size:14px;">css和js带参数(形如.css?v=与.js?v= 或 .css?version=与.js?version ...
- 操作系统中的P,V操作(转)
无论是计算机考研.计算机软件水平考试.计算机操作系统期末考试还是其他计算机岗位考试,P.V原语操作都是一个常考点.下面笔者总结了关于P.V操作的一些知识. 信号量是最早出现的用来解决进程同步与互斥问题 ...
- 关于P,V操作理解的突破,关于并发设计与并行
今天又找了一篇博客研究P,V操作.. 发现..它有一个变量没有声明.. 我就换了篇博客..http://c.biancheng.net/cpp/html/2600.html 然后就看懂了.. 关键突破 ...
- XV Open Cup named after E.V. Pankratiev. GP of Tatarstan
A. Survival Route 留坑. B. Dispersed parentheses $f[i][j][k]$表示长度为$i$,未匹配的左括号数为$j$,最多的未匹配左括号数为$k$的方案数. ...
- XVII Open Cup named after E.V. Pankratiev. GP of SPb
A. Array Factory 将下标按前缀和排序,然后双指针,维护最大的右边界即可. #include<cstdio> #include<algorithm> using ...
随机推荐
- C# 通过ServiceStack 操作Redis——ZSet类型的使用及示例
Sorted Sets是将 Set 中的元素增加了一个权重参数 score,使得集合中的元素能够按 score 进行有序排列 /// <summary> /// Sorted Sets是将 ...
- Linux 用户登陆提示This account is currently not available
使用 su 切换到用户 hdfs 时提示:This account is currently not available,使用 hdfs 用户登陆会直接退出 ssh 窗口. 此时可以尝试检查文件 /e ...
- 采用React + Fabric + ImageMagick 实现大图片DIY定制
一,需求背景: 某个印刷公司,有一系列的设计文件模板.接到客户订单时,就在这些设计文件模板上,做一些简单的定制,就能够满足客户的印刷需求. 如在设计文件模板上添加客户的Logo,二维码,联系方式等. ...
- P1164_小A点菜(JAVA语言)
思路 简单动态规划问题 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点" ...
- 微信小程序实现搜索关键词高亮
目录 1,前言 2,思路 3,代码逻辑 1,前言 项目中碰到一个需求,搜索数据并且关键词要高亮显示,接到需求,马上开干.先上效果图.源码已经做成了小程序代码片段,放入了GitHub了,文章底部有源码链 ...
- abp加DDD开发:低耦合、可复用、可扩展的【工单】业务模块-简介和集成
前言 很多场景[单体+模块化]比微服务更合适,开发难度低.代码可复用性强.可扩展性强.模块化开发有些难点,模块启动与卸载.模块之间的依赖和通讯.asp.net core abp为我们提供了模块化开发能 ...
- 深度学习---1cycle策略:实践中的学习率设定应该是先增再降
深度学习---1cycle策略:实践中的学习率设定应该是先增再降 本文转载自机器之心Pro,以作为该段时间的学习记录 深度模型中的学习率及其相关参数是最重要也是最难控制的超参数,本文将介绍 Lesli ...
- java面试-生产环境服务器变慢,谈谈你的诊断思路
1.uptime:查询linux系统负载 11:16:16 系统当前时间 up 64 days, 19:23 从上次启动开始系统运行的时间3 users 连接数量,同一用户多个连接的时候算多个load ...
- BUAA_2021_SE_READING_#1
项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任健) 这个作业的要求在哪里 个人阅读作业#1 我在这个课程的目标是 通过课程学习,完成第一个可以称之为"软件"的项目 ...
- 【笔记】《Redis设计与实现》chapter9 数据库
9.1 服务器中的数据库 Redis服务器将所有都保存在服务器状态redis.h/redisServer结构中 struct redisServer{ //... // 一个数组,保存着服务器中所有数 ...