这篇文章将为大家详细讲解有关vue怎么实现绑定事件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
<强>一、前言强>
,vuejs中的事件绑定,使用<代码> & lt; v:事件名=函数名祝辞> 代码来完成的,这里函数名是定义在Vue实例中的方法对象中的,Vue实例可以直接访问其中的方法。
<强>二、事件绑定方式强>
1,直接在标签中写js方法
<代码>,& lt;按钮v:点击=熬?& # 39;你好# 39;)“在执行方法的第一种写法& lt;/button> 代码>
2,调用方法的办法
& lt; button v:点击=霸诵?)“在执行方法的第一种写法& lt;/button> , & lt;才能button @click=霸诵?)“在执行方法的,简写,写法& lt;/button> export default  {,, data 才能;(),{, return {才能 ,,,味精:& # 39;你好vue # 39;, ,,列表:[],, ,,} ,,}, 方法:{才能 ,才能运行:函数(){ ,,,警报(& # 39;这是一个方法& # 39;); ,,,} ,,} 以前,}>(1)方法传参,方法直接在调用时在方法内传入参数
, & lt; button @click=白饔?& # 39;111 & # 39;)“在执行方法传值111 & lt;/button> & lt;才能button @click=白饔?& # 39;222 & # 39;)“在执行方法传值2222 & lt;/button> ,作用(val) { ,,警报(val); ,,},(2)传入事件对象
, & lt; button data-aid=& # 39; 123 & # 39;, @click=癳ventFn(事件)美元“祝辞事件对象& lt;/button> eventFn (e) { ,,console.log (e); ,,//,e.srcElement dom节点 ,,e.srcElement.style.background=& # 39;红色# 39;; ,,console.log (e.srcElement.dataset.aid);,/*获取自定义属性的值*/以前,,}><强>三、事件修饰符强>
1, stop //阻止事件继续传播即阻止它的捕获和冒泡过程
方法一:<代码> @click=& # 39;显示事件($)& # 39;,,,代码>我们有了事件对象后,我们函数中是不是就可以利用原生中的<代码> e。cancelBubble=true> 代码;
方法二:<代码> @click.stop=& # 39;显示()& # 39;,,代码>,只要在事件后面加.stop 就可以阻止事件冒泡
举个例子:
实例:如下点击内部点击,阻止了冒泡过程,即只执行tz这个方法,如果不加。停下来,先执行tz方法,后执行gett方法。即通过了冒泡这个过程。
& lt; div v:点击=癵ett"比; ,外部点击 ,& lt; div v: click.stop=皌z"祝辞内部点击& lt;/div> & lt;/div>2, prevent ,,//阻止默认事件:
方法一:<代码> @click=& # 39;显示事件($)& # 39;,,,代码>我们有了事件对象后,我们函数中是不是就可以利用原生中的<代码> e.preventDefault(); 代码>
方法二:<代码> @click.prevent=& # 39;显示()& # 39;,代码>,只要在事件后面加.prevent 就可以阻止默认事件。
举个例子:阻止了一标签的默认刷新
<代码> & lt; a href=https://www.yisu.com/zixun/薄皏:点击。防止>点击> 代码>
3,捕获//添加事件监听器时使用事件捕获模式,即在捕获模式下触发
实例:在点击最里层的点击6时,gett方法先执行,因为gett方法在捕获模式执行的,先与冒泡事件。下列执行顺序geet→设置→tz,因为后俩个还是冒泡模式下触发的事件。
& lt; div v: click.capture=癵ett"祝辞外部点击5 ,& lt; div v:点击=皌z"祝辞内部点击5 & lt;才能div v:点击=皊et"在点击6 & lt;/div> ,& lt;/div> & lt;/div>4,自我//当前元素自身时触发处理函数时才会触发函数
原理:是根据event.target确定是否当前元素本身,来决定是否触发的事件/函数
实例:如果点击内部点击2,冒泡不会执行gett方法,因为事件。目标指的是内部点击2的dom元素,不是外部点击1的,所以不会触发自己的点击事件。
& lt; div v: click.self=癵ett"比; 1,外部点击 ,& lt; div v:点击=皌z"祝辞内部点击2 & lt;/div> & lt;/div>5,一旦//只触发一次
实例:
<代码> & lt; div v: click.once=皌z"祝辞once
6键盘事件
方法一:<代码> @keydown=& # 39;显示()& # 39;,,,,代码>
当然我们传个event 美元;也可以在函数中获ev。键码
如果(ev.keyCode==13) { ,警报(& # 39;你按了回车键! & # 39;) }
方法二:
, & lt; input 类型=皌ext", @keyup.enter=跋允?)“在回车执行 ,& lt; input 类型=皌ext", @keydown.up=& # 39;显示()& # 39;,在上键执行 ,& lt; input 类型=皌ext", @keydown.down=& # 39;显示()& # 39;,祝辞下键执行 ,& lt; input 类型=皌ext", @keydown.left=& # 39;显示()& # 39;,在左键执行 ,& lt; input 类型=皌ext", @keydown.right=& # 39;显示()& # 39;,在右键执行vue怎么实现绑定事件