vue指令之v-on事件绑定指令

可以用v-on指令监听DOM事件,便在触发时运行一些javaScript代码。

//v-on指令可以简写为@
 <div id="example1">
	<button v-on:click='counter+=1'>数值:{{counter}}</button>
//在实际中,js代码多是放在外面的 所以js函数通常放在Vue对象的methods中 而且可以通过传参执行函数
    <button v-on:click="greet('abc')">Greet</button>
//有时也需要在内联语句处理器中访问原始的DOM事件,可以用特殊变量$event把它传入方法
	<button v-on:click="greet('abc',$event)">原始DOM事件</button>
</div>
<script>
	 var vm=new Vue({
            el:'#app',
            data:{
                counter:0,
                name:'lhh'
            },
            methods:{
                greet:function(str,e){
                    alert(str);
                    //可以在函数内使用data数据
                    alert(this.name);
                    alert('hi,ni hao');
                    console.log(e);     
                },
            }
        })
</script>

在这里插入图片描述
事件修饰符:

    <!-- .stop-阻止冒泡
    .prevent-阻止默认事件
    .capture-阻止捕获
    .self-只监听触发该元素的事件
    .once-只触发一次
    .left-左键事件
    .right-右键事件
    .middle-中间滚轮事件 -->

常用的事件以及修饰符的搭配使用:

 v-on:click.stop  阻止单击事件继续传播
 v-on:submit.prevent  提交事件不在重载页面
 v-on:click.stop.prevent  修饰符可以串联
 v-on:click.capture  添加时间监听器时使用时间捕获模式,即元素自身触发的事件现在此处理,然后在交由内部元素进行处理
 v-on:click.self  只当在event.target是当前元素自身时触发处理函数,即事件不是从内部元素触发的    

例子:

//在默认条件下,当点击提交按钮之后,表单会进行提交,这里添加了提交事件的默认情况,所以再点击提交以后会执行后面的函数
 <form @submit.prevent="handleSubmit" action="">
       <input type="text" name="username"><br>
        <input type="submit" value="提交">
 </form>
//按键修饰符 
   //按键13时调用vm.submit
        <input v-on:keyup.13='submit'>
   // 按键enter时调用vm.submit
        <input v-on:keyup.enter='submit'> 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值