首页 > 其他分享 >VUE学习-监听事件

VUE学习-监听事件

时间:2022-08-15 10:33:51浏览次数:66  
标签:触发 VUE 修饰符 event 学习 事件 按键 监听

监听事件

事件处理方法可以用 v-on 指令监听 DOM 事件,并在触发时运行一些 JavaScript 代码。

<div id="app">
	<button v-on:click="counter += 1">Add 1</button>
	<p>The button above has been clicked {{ counter }} times.</p>
</div>
<script>
new Vue({
	el: '#app',
	data: { counter: 0 }
})
</script>

有时也需要在内联语句处理器中访问原始的 DOM 事件。可以用特殊变量 $event 把它传入方法

<div id="app">
	<button v-on:click="warn('Form cannot be submitted yet.', $event)">Submit</button>
</div>
<script>
new Vue({
	el:'#app',
	methods:{
		warn(msg,event){
			if(event)event.preventDefault();
			alert(msg);
		}
	}
})
</script>

事件修饰符

  • .stop: 阻止冒泡。
  • .prevent: 阻止默认事件。
  • .capture: 捕捉冒泡。
  • .self: 自身触发。
  • .once: 只会触发一次。
  • .native - 监听组件根元素的原生事件。
  • .passive: 告诉浏览器你不想阻止事件的默认行为。:scroll.passive = 'onScroll',滚动事件的默认行为 (即滚动行为) 将会立即触发
<!-- 滚动事件的默认行为 (即滚动行为) 将会立即触发,而不会等待 `onScroll` 完成 -->
<!-- 不要把 .passive 和 .prevent 一起使用, -->
<div v-on:scroll.passive="onScroll">...</div>

按键修饰符

监听键盘事件时添加按键修饰符

<input type="submit" v-on:keyup.enter="submit">

按键码

按键码 键值
.enter
.tab
.delete “Del”和“Back Space”
.esc
.space
.up,.down,.left,.right 方向键

自定义按键

别名有一些按键 (.esc 以及所有的方向键) 在 IE9 中有不同的 key 值, 如果你想支持 IE9,这些内置的别名应该是首选。

//实例vm中可以用:keyup.f1="event"绑定按键f1的响应事件
vm.config.keyCodes.f1 = 112;

修饰键

修饰键与常规按键不同,在和 keyup 事件一起用时,事件触发时修饰键必须处于按下状态。

  • 按键修饰符

    按键修饰符 键值
    .ctrl
    .alt
    .shift
    .meta "window"
    .exact 精准按键修饰符
  • <!-- 只有在按住 ctrl 的情况下释放按键C,才能触发 keyup.ctrl。而单单释放 ctrl 也不会触发事件。 -->
    <input v-on:keyup.ctrl.67="clear">
    <!-- 有且只有 Ctrl 被按下的时候才触发 -->
    <button v-on:click.ctrl.exact="onCtrlClick">A</button>
    
  • 鼠标修饰符

    鼠标修饰符 键值
    .left
    .right
    .middle

标签:触发,VUE,修饰符,event,学习,事件,按键,监听
From: https://www.cnblogs.com/-LemonWater-/p/16587370.html

相关文章

  • FFmpeg学习:frame的复制和拷贝
    实践中经常遇到frame的复制拷贝,特此记录一下;深拷贝连同数据也被复制一份浅拷贝只拷贝参数,具有相同的数据指针相关apiav_frame_ref()【函数原型】点击查看代码......
  • git学习(02)git下载安装与配置
    下载打开 Git官网,点击 DownloadforWindows由于国内网络限制,一般下载会很缓慢。国内可以使用 淘宝镜像下载 或者 华为镜像下载其他的国外资源下载缓慢都可......
  • VUE学习-自定义指令
    自定义指令有的情况下,你仍然需要对普通DOM元素进行底层操作,这时候就会用到自定义指令。<divid="directive-demo"> <inputv-focus/></div>全局注册Vue.direct......
  • HCIA学习笔记十七:Trunk接口
     一、配置Trunk接口\\创建VLAN[SWA]vlan3[SWA]vlan5\\配置端口类型[SWA-Ethernet0/3]portlink-typetrunk\\配置Trunk-Link端口PVID[SWA-Ethernet0/3]port......
  • git学习(01) git的概念及相关介绍
    git的定义Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是LinusTorvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本......
  • 快速学习新技能
    三个步骤:1、明确学习内容,列出具体目标学习内容:就是你要学的技能,任何想学的都阔以具体目标:一定要具体!要可以量化,或者可以直接激起你学习的动力2、找到正确的学习方法运用互......
  • Java开发学习(二十五)----使用PostMan完成不同类型参数传递
    一、请求参数请求路径设置好后,只要确保页面发送请求地址和后台Controller类中配置的路径一致,就可以接收到前端的请求,接收到请求后,如何接收页面传递的参数?关于请求参数的......
  • (C#)监听剪贴板
    publicpartialclassForm1:Form{publicForm1(){InitializeComponent();AddClipboardFormatListener(this.Hand......
  • Nginx学习笔记
    Nginx简介Nginx(enginex)是一个高性能的HTTP和反向代理web服务器,Nginx和Apache的区别Apache和Nginx最核心的区别在于apache是同步多进程模型,一个连接对应一个进程;......
  • Nodemon 如何实时监听 TypeScript 项目下的文件并热部署?
    首先你的项目要安装ts-node和nodemon:npmi-Dts-nodenodemon在package.json文件中配置运行脚本:"dev":"nodemon--watchsrc/**/*.ts--exec\\\"ts-node\\\"src/ma......