一、前言
vuejs中的事件绑定,使用
<v-on:事件名 = 函数名>来完成的,这里函数名是定义在Vue实例中的methods对象中的,Vue实例可以直接访问其中的方法。二、事件绑定方式
1、 直接在标签中写js方法
<button v-on:click="alert('hi')">执行方法的第一种写法</button>2、调用method的办法
<button v-on:click="run()">执行方法的第一种写法</button> <button @click="run()">执行方法的 简写 写法</button>
export default {
data () {
return {
msg: '你好vue',
list:[] }
},
methods:{
run:function(){
alert('这是一个方法');
}
}
}
(1)方法传参,方法直接在调用时在方法内传入参数
<button @click="deleteData('111')">执行方法传值111</button>
<button @click="deleteData('222')">执行方法传值2222</button>
deleteData(val){
alert(val);
},(2)传入事件对象
<button data-aid='123' @click="eventFn($event)">事件对象</button>
eventFn(e){
console.log(e);
// e.srcElement dom节点
e.srcElement.style.background='red';
console.log(e.srcElement.dataset.aid); /*获取自定义属性的值*/
}三、事件修饰符
1、stop //阻止事件继续传播 即阻止它的捕获和冒泡过程
方法一:
@click='show($event)' 我们有了事件对象后,我们函数中是不是就可以利用原生中的
e.cancelBubble=true;方法二:
@click.stop='show()' 只要在事件后面加 .stop 就可以阻止事件冒泡举个例子:
实例:如下点击内部点击,阻止了冒泡过程,即只执行tz这个方法,如果不加.stop,先执行tz方法,后执行gett方法。即通过了冒泡这个过程。
<div v-on:click="gett">
外部点击
<div v-on:click.stop="tz">内部点击</div>
</div>2、prevent //阻止默认事件:
方法一:
@click='show($event)' 我们有了事件对象后,我们函数中是不是就可以利用原生中的
e.preventDefault();方法二:
@click.prevent='show()'










