分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

Vue.js 基础学习 v-on 指令

发布时间:2023-09-06 01:08责任编辑:董明明关键词:js指令

在前面的基础学习中已经写了v-for和v-bind两个指令

今天学习v-on指令

v-on指令:用来绑定事件的
body中

<div id="app"></div>

script中

var app = new Vue({el : ‘#app‘,methods : {}})

在div app中加入一个button并绑定一个点击事件

<button v-on:click="onClick">点我</button>

在js中的methods 中加入一个onClick

methods : {onClick : function(){console.log("clicked");}, ???//每次添加一个成员就在后面加一个,方便添加新的}

这时,在浏览器中点击按钮console会打印clicked,绑定click成功
我们还可以同时绑定多个事件

<button v-on=‘{mouseenter:onEnter,mouseleave:onOut}‘ v-on:click="onClick">点我</button>

上面我们通过对象的方式绑定多个事件,对象中的键是事件的名称 值是methods中的成员属性方法

methods : {onClick : function(){console.log("clicked");},onEnter : function(){console.log("mouseenter");},onOut : function(){console.log("mouseout");},}

这时,在浏览器中将鼠标移入button console会打印mouseenter 移出button console会打印mouseout

在div app中添加一个form 为form绑定一个提交事件

<form v-on:submit="onSubmit"><input type="text"><br /><input type="submit" value="提交"></form>

在method中添加onSubmit

onSubmit:function() {console.log("submitted");},

绑定完发现在运行时无法在console中打印出submitted 原因是每次提交页面都会刷新

避免刷新的方法有两种
第一种onSubmit传递参数$event

<form v-on:submit="onSubmit($event)">

然后

onSubmit:function(e) {e.preventDefault();console.log("submitted");},

这样我们就能打印出submitted而不刷新页面了

然而vue为我们提供了更加简单的方法那就是

<form v-on:submit.prevent="onSubmit">

而onSubmit不改动

onSubmit:function() {console.log("submitted");},

vue还提供了subnit.stop 用来停止冒泡

keyUp事件也提供了keyUp.enter只有enter按下时才触发

<form v-on:keyUp.enter="onkeyUpenter" v-on:submit.prevent="onSubmit">

在method中添加

onkeyUpenter : function() {console.log("keyenterpressed");},

只有按下enter时才会在console中打印

由于v-on很常用所以它也有一个简写方式@如 @click="onClick" @代表v-on:
在用对象同时绑定多个事件时,不能用@代替v-on。

Vue.js 基础学习 v-on 指令

原文地址:http://www.cnblogs.com/huzhuo/p/7466864.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved