目录
一、v-on的基本用法
使用v-on:click给button绑定监听事件以及回调函数,@是v-on:的缩写,也就是简写也可以使用@click。方法一般是需要写方法名加上(),在@click中可以省掉,如上述的加。
二、v-on的参数传递
三、v-on的修饰词
.stop的使用,btn的click事件不会传播,不会冒泡到上层,调用event.stopPropagation()。
.prevent 调用event.preeventDefault阻止默认行为。
.enter监听键盘事件;
.once 事件只触发一次(常用);
.capture 使用事件的捕获模式;
.self 只有event.target是当前操作的元素时才触发事件;
.passive 事件的默认行为立即执行,无需等待事件回调执行完毕;
一、v-on的基本用法
使用v-on:click给button绑定监听事件以及回调函数,@是v-on:的缩写,也就是简写也可以使用@click。方法一般是需要写方法名加上(),在@click中可以省掉,如上述的。
以简单的计数器为例
{{count}}
const app = new Vue({
el:"#app",
data:{
count:0
},
methods: {
increment(){
this.count++
},
decrement(){
this.count--
}
}
})
二、v-on的参数传递
在methods中定义的方法,我们可以进行调用,可以带上(),也可以不带()
如下的btnClick的调用中,加了()想要调用,里面必须要有值,如果不加小括号,就只会调用事件对象。
btnClick3想要传入event,需要在调用时写$event,才能调用事件对象。
const app = new Vue({
el:"#app",
methods:{
btnClick(){
console.log("点击XXX");
},
btnClick2(value){
console.log(value+"----------");
},
btnClick3(event,value){
console.log(event+"----------"+value);
}
}
})
事件没传参,可以省略()事件调用方法传参了,写函数时候省略了小括号,但是函数本身是需要传递一个参数的,这个参数就是原生事件event参数传递进去如果同时需要传入某个参数,同时需要event是,可以通过$event传入事件。
三、v-on的修饰词
.stop的使用,btn的click事件不会传播,不会冒泡到上层,调用event.stopPropagation()。 .prevent 调用event.preeventDefault阻止默认行为。 .enter监听键盘事件; once 事件只触发一次(常用); capture 使用事件的捕获模式; self 只有event.target是当前操作的元素时才触发事件; passive 事件的默认行为立即执行,无需等待事件回调执行完毕;
.div {
height:80px;
background:#f00;
}
div1外面
div2里面
const app = new Vue({
el:"#app",
methods:{
btnClick(){
console.log("点击button");
},
divClick(){
console.log("点击div");
},
submitClcik(){
console.log("提交被阻止了")
},
submit(){
console.log("keyup点击")
},
showInfo(){
alert('web学习真有趣')
},
show(msg){
console.log(msg)
},
showself(e){
console.log(e.target);
},
}
})
推荐文章
发表评论