详解vue中v-on事件监听指令的基本用法
一、本节说明
我们在开发过程中经常需要监听用户的输入,比如:用户的点击事件、拖拽事件、键盘事件等等。这就需要用到我们下面要学习的内容v-on指令。
我们通过一个简单的计数器的例子,来讲解v-on指令的使用。
二、 怎么做
- 定义数据counter,用于表示计数器数字,初始值设置为0
- v-on:click 表示当发生点击事件的时候,触发等号里面的表达式或者函数
- 表达式counter++和counter--分别实现计数器数值的加1和减1操作
- 语法糖:我们可以将v-on:click简写为@click
三、 效果
- 点击加号数值加1
- 点击减号数值减1
四、 深入
表达式只适用于简单的数据操作场景。如果操作比较复杂,我们要使用函数的方式实现。
定义methods:incr与decr分别实现加一和减一操作
附录:js常用可监听事件列表
属性 | 事件何时触发 |
abort | 图像的加载被中断。 |
blur | 元素失去焦点。 |
change | 域的内容被改变。 |
click | 当用户点击某个对象时调用的事件句柄。 |
dblclick | 当用户双击某个对象时调用的事件句柄。 |
error | 在加载文档或图像时发生错误。 |
focus | 元素获得焦点。 |
keydown | 某个键盘按键被按下。 |
keypress | 某个键盘按键被按下并松开。 |
keyup | 某个键盘按键被松开。 |
load | 一张页面或一幅图像完成加载。 |
mousedown | 鼠标按钮被按下。 |
mousemove | 鼠标被移动。 |
mouseout | 鼠标从某元素移开。 |
mouseover | 鼠标移到某元素之上。 |
mouseup | 鼠标按键被松开。 |
reset | 重置按钮被点击。 |
resize | 窗口或框架被重新调整大小。 |
select | 文本被选中。 |
submit | 确认按钮被点击。 |
unload | 用户退出页面。 |
以上就是详解vue中v-on事件监听指令的基本用法的详细内容,更多关于vue v-on指令的用法的资料请关注我们其它相关文章!
相关推荐
-
vue基础之事件v-onclick="函数"用法示例
本文实例讲述了vue基础之事件v-onclick=函数用法.分享给大家供大家参考,具体如下: v-on:click/mouseout/mouseover/dblclick/mousedown..... 事件: v-on:click="函数" v-on:click/mouseout/mouseover/dblclick/mousedown..... new Vue({ el:'#box', data:{ //数据 arr:['apple','banana','orange','pear'
-
VUE中v-on:click事件中获取当前dom元素的代码
在开发中总是忘记,特意在此记录 关键字: $event <div class="bed" v-on:click="updateBed(index,$event)">{{item.BedID}}<br>{{item.CriminalName}}</div> updateBed: function(index, e) { var selectedBedDom = $(e.srcElement)//dom元素 } PS:下面看下v-
-
对Vue.js之事件的绑定(v-on: 或者 @ )详解
1.Vue.js事件绑定的一般格式 v-on:click='function' v-on:click/mouseout/mouseover/ @click 2.Vue.js事件绑定的实现 2.1 JavaScript代码 <script type="text/javascript" src="../js/vue-1.0.21.js"></script> <script type="text/javascript"&g
-
关于vue3默认把所有onSomething当作v-on事件绑定的思考
最近在重新看vue3的rfcs,发现一个细节,原话如下: props that start with on are handled as v-on bindings, with everything after on being converted to all-lowercase as the event name (more on this below) 也就是说,以后如果你在传递props的时候,以 on 开头的props,如果在组件上没有做props的声明,那么会被当作事件绑定到组件的根
-
vue学习笔记之动态组件和v-once指令简单示例
本文实例讲述了vue动态组件和v-once指令.分享给大家供大家参考,具体如下: 点击按钮时,自动切换两个组件 <component :is="type"></component>,当点击按钮之后,会自动清除原来的组件,显示新的组件. 每一次切换,都需要销毁+创建 但是这样消耗有点大,所以我们在子组件中引用了v-once指令,这样可以将显示在页面中的组件存到内存中,不会完全销毁. <!DOCTYPE html> <html lang="
-
浅谈Vue.js 中的 v-on 事件指令的使用
v-on 事件指令用于绑定事件. 1 基础用法 v-on 指令绑定事件后,就会监听相应的事件. html: <div id="app"> <h3>已点击 {{count}} 次</h3> <button @click="count++">点我</button> </div> 注意: @click 是 v-on:click 的简写形式, @ 即表示 v-on: . js: <script&g
-
Vue 动态组件components和v-once指令的实现
一.实现两个组件间互相展示.互相隐藏 <!DOCTYPE html> <html> <head> <title>动态组件</title> <script type="text/javascript" src="./vue-dev.js"></script> </head> <body> <div id="app"> <ch
-
vue.js绑定事件监听器示例【基于v-on事件绑定】
本文实例讲述了vue.js绑定事件监听器.分享给大家供大家参考,具体如下: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maxi
-
详解vue中v-on事件监听指令的基本用法
一.本节说明 我们在开发过程中经常需要监听用户的输入,比如:用户的点击事件.拖拽事件.键盘事件等等.这就需要用到我们下面要学习的内容v-on指令. 我们通过一个简单的计数器的例子,来讲解v-on指令的使用. 二. 怎么做 定义数据counter,用于表示计数器数字,初始值设置为0 v-on:click 表示当发生点击事件的时候,触发等号里面的表达式或者函数 表达式counter++和counter--分别实现计数器数值的加1和减1操作 语法糖:我们可以将v-on:click简写为@click 三
-
详解Vue中的基本语法和常用指令
什么是vue.js Vue.js是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于Weex) Vue.js 是前端的**主流框架之一**,和Angular.js.React.js 一起,并成为前端三大主流框架! Vue.js 是一套构建用户界面的框架,**只关注视图层**,它不仅易于上手,还便于与第三方库或既有项目整合.(Vue有配套的第三方类库,可以整合起来做大型项目的开发) Vue
-
详解vue中v-bind:style效果的自定义指令
自定义指令 1.什么是自定义指令 以 v- 为前缀,然后加上自己定义好的名字组成的一个指令就是自定义指令.为什么要有自定义指令呢?在有些时候,你仍然需要对普通的DOM元素进行底层的操作,这个时候就可以用到自定义指令. 2.自定义指令的语法 全局自定义指令 // 注册一个全局自定义指令 `v-focus` Vue.directive('focus', { // 当被绑定的元素插入到 DOM 中时-- inserted: function (el) { // 聚焦元素 el.focus() } })
-
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
最近在项目中实现在循环出来的图片中当鼠标移入隐藏当前图片显示另一张图片的需求时碰到了一个小问题.就是当使用@mouseenter 和@mouseleave事件来实现这个需求时却发现鼠标移入后图片出现闪烁现象. 重点:事件写到父元素上才行!!! 0.0 下面写下我的实现方法和实现效果 样式代码: <div class="imgs" v-for="(item,index) in exampleUrl" :key = index @mouseenter ="
-
详解vue中在父组件点击按钮触发子组件的事件
我把这个实例分为几个步骤解读: 1.父组件的button元素绑定click事件,该事件指向notify方法 2.给子组件注册一个ref="child" 3.父组件的notify的方法在处理时,使用了$refs.child把事件传递给子组件的parentMsg方法,同时携带着父组件中的参数msg 4.子组件接收到父组件的事件后,调用了parentMsg方法,把接收到的msg放到message数组中 父组件 <template> <div id="app&qu
-
详解Vue中Computed与watch的用法与区别
目录 computed computed只接收一个getter函数 computed同时接收getter函数对象和setter函数对象 调试 Computed watchEffect 立即执行 监听基本数据类型 停止watchEffect 清理watchEffect watchPostEffect 和 watchSyncEffect watchEffect不能监听对象 watch 监听单个数据 监听多个数据(传入数组) 官方文档总结 computed watchEffect watch comp
-
详解Vue中的MVVM原理和实现方法
下面由我阿巴阿巴的详细走一遍Vue中MVVM原理的实现,这篇文章大家可以学习到: 1.Vue数据双向绑定核心代码模块以及实现原理 2.订阅者-发布者模式是如何做到让数据驱动视图.视图驱动数据再驱动视图 3.如何对元素节点上的指令进行解析并且关联订阅者实现视图更新 一.思路整理 实现的流程图: 我们要实现一个类MVVM简单版本的Vue框架,就需要实现一下几点: 1.实现一个数据监听Observer,对数据对象的所有属性进行监听,数据发生变化可以获取到最新值通知订阅者. 2.实现一个解析器Compi
-
详解Vue中$props、$attrs和$listeners的使用方法
目录 背景 一.文档描述 二.具体使用 三.总结 背景 现在我们来讨论一种情况,父组件与孙子组件怎么通信,我们有多少种解决方案? 我们使用VueX来进行数据管理,但是如果项目中多个组件共享状态比较少,项目比较小,并且全局状态比较少,那使用VueX来实现该功能,并没有发挥出VueX的威力. 使用B来做中转站,当A组件需要把信息传给C组件时,B接受A组件的信息,然后利用属性传给C组件, 这是一种解决方案,但是如果嵌套的组件过多,会导致代码繁琐,代码维护比较困难;如果C中状态的改变需要传递给A, 使用
-
详解vue中v-model和v-bind绑定数据的异同
vue的模板采用DOM模板,也就是说它的模板可以当做DOM节点运行,在浏览器下不报错,绑定数据有三种方式,一种是插值,也就是{{name}}的形式,一种是v-bind,还有一种是v-model.{{name}}的形式比较好理解,就是以文本的形式和实例data中对应的属性进行绑定.比如: var app = new Vue({ el: '#app', template: '<div @click="toggleName">{{name}}</div>', data
-
详解Vue中的watch和computed
前言 对于使用Vue的前端而言,watch.computed和methods三个属性相信是不陌生的,是日常开发中经常使用的属性.但是对于它们的区别及使用场景,又是否清楚,本文我将跟大家一起通过源码来分析这三者的背后实现原理,更进一步地理解它们所代表的含义. 在继续阅读本文之前,希望你已经具备了一定的Vue使用经验,如果想学习Vue相关知识,请移步至官网. Watch 我们先来找到watch的初始化的代码,/src/core/instance/state.js export function in
随机推荐
- AngularJS语法详解(续)
- javascript秒数倒计时自动跳转代码
- asp.net中Word转Html的办法(不需要WORD组件)
- Win2003 手机站IIS MIME类型设置大全
- .net/c# memcached缓存获取所有缓存键的方法步骤
- C#遍历系统进程的方法
- C++中Overload,Override,Hide之间的区别
- 自制控制进程和控制开机启动项批处理(ntsd强制结束版)
- 可兼容IE的获取及设置cookie的jquery.cookie函数方法
- chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
- MSSQL 事务说明
- Javascript中arguments用法实例分析
- 使用ajax的post同步执行(实现方法)
- JS中promise化微信小程序api
- JAVA线上常见问题排查手段(小结)
- python 修改本地网络配置的方法
- Python发送邮件功能示例【使用QQ邮箱】
- Java三种求水仙花数的方法
- Zookeeper未授权访问测试问题
- JAVA实现长连接(含心跳检测Demo)