Vue方法与事件处理器详解


Posted in Javascript onDecember 01, 2016

本文实例为大家分享了Vue方法与事件处理器的使用,供大家参考,具体内容如下

按键修饰符

在监听键盘事件时,我们经常需要检测 keyCode。Vue.js 允许为 v-on 添加按键修饰符:

<!-- 只有在 keyCode 是 13 时调用 vm.submit() -->
<input v-on:keyup.13="submit">

记住所有的 keyCode 比较困难,Vue.js 为最常用的按键提供别名:

<!-- 同上 -->
<input v-on:keyup.enter="submit">
<!-- 缩写语法 -->
<input @keyup.enter="submit">

全部的按键别名:enter 、tab 、delete、 esc 、space、 up 、down、 left 、right。

eg:

HTML如下:

<template>
<div class="home-body">
 <div class="project-all">
 <template v-for='project in projectData'>
 <div class="name" v-on:click='successT($index)' v-bind:class="{'success':project.success}">{{project.projectName}}</div>
 </template>
 <div class="name" v-if='addp' v-on:click='addproject'>新增项目</div>
 <div class="name" v-if='!addp'>
 <input type="text" class='name-input' placeholder='请填写项目名称' v-on:keyup.enter='saveProjectFun' v-el:addProject>
 </div>
 <div class="name">
 <input type="text" class='name-input' placeholder='esc' v-on:keyup.esc='escFun'>
 </div>
 <div class="name">
 <input type="text" class='name-input' placeholder='delete' v-on:keyup.delete='deleteFun'>
 </div>
 <div class="name">
 <input type="text" class='name-input' placeholder='space' v-on:keyup.space='spaceFun'>
 </div>
 <div class="name">
 <input type="text" class='name-input' placeholder='up' v-on:keyup.up='upFun'>
 </div>
 <div class="name">
 <input type="text" class='name-input' placeholder='down' v-on:keyup.down='downFun'>
 </div>
 <div class="name">
 <input type="text" class='name-input' placeholder='left' v-on:keyup.left='leftFun'>
 </div>
 <div class="name"> 
 <input type="text" class='name-input' placeholder='right' v-on:keyup.right='rightFun'>
 </div>
 </div>
</div>
</template>

JS代码:

<script>
export default {
 components: {

 },
 ready: function() {
 
 },
 methods: {
 //当你选种某个项目时,将其success属性改为true,为其class添加 success 
 successT:function(index){
 this.projectData.forEach(function(item){
 item.success=false;
 });
 this.projectData[index].success=true;
 },
 //点击添加项目后让其不显示
 addproject:function(){
 this.addp=false;
 }, 
 //当用户按回车后,保存添加的项目
 saveProjectFun:function(){
 var obj={}
 obj.success=false;
 let name=this.$els.addproject.value;
 obj.projectName=name.replace(/\s+/g,""); 
 this.projectData.push(obj);
 this.addp=true;
 },
 escFun:function(){
 alert("esc");
 },
 deleteFun:function(){
 alert("delete");
 },
 spaceFun:function(){
 alert("space空格键");
 },
 upFun:function(){
 alert("up");
 },
 downFun:function(){
 alert("down");
 },
 leftFun:function(){
 alert("left");
 },
 rightFun:function(){
 alert("right");
 }
 },
 data() {
 return {
 addp:true,//是否显示添加项目
 projectData:[{
  success:false,
  projectName: '人员管理系统'
  }, { 
  success:false,
  projectName: '管理系统'
  },{
  success:false,
  projectName: '假数据1'
  },{
  success:false,
  projectName: '假数据2'
  }, {
  success:false,
  projectName: '假数据3'
  }
 ],
 }
 }
}
</script>

页面最开始:

Vue方法与事件处理器详解

当你点击新增项目后:

Vue方法与事件处理器详解

在文本框中输入  “豆豆”后按回车键后页面

Vue方法与事件处理器详解

当你按回车键后触发  keyup.enter事件调saveProjectFun方法,在此方法中进行数据保存。

本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用JavaScript和注册表脚本实现右键收藏Web页选中文本
Jan 28 Javascript
用JQuery 实现的自定义对话框
Mar 24 Javascript
对javascript的一点点认识总结《javascript高级程序设计》读书笔记
Nov 30 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
Jan 24 Javascript
jquery禁用右键示例
Apr 28 Javascript
详解JavaScript异步编程中jQuery的promise对象的作用
May 03 Javascript
vue.js指令v-for使用及索引获取
Nov 03 Javascript
Vue.js实现简单动态数据处理
Feb 13 Javascript
react学习笔记之state以及setState的使用
Dec 07 Javascript
js阻止默认右键的下拉菜单方法
Jan 02 Javascript
jQuery实现鼠标移入显示蒙版效果
Jan 11 jQuery
vue route新窗口跳转页面并且携带与接收参数
Apr 10 Vue.js
简单理解vue中实例属性vm.$els
Dec 01 #Javascript
jsp 自动编译机制详细介绍
Dec 01 #Javascript
基于vue.js实现图片轮播效果
Dec 01 #Javascript
JQuery学习总结【一】
Dec 01 #Javascript
Vue.js第一天学习笔记(数据的双向绑定、常用指令)
Dec 01 #Javascript
jQuery 如何实现一个滑动按钮开关
Dec 01 #Javascript
有趣的bootstrap走动进度条
Dec 01 #Javascript
You might like
php 变量定义方法
2009/06/14 PHP
PHP面向对象——访问修饰符介绍
2012/11/08 PHP
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
2018/03/15 PHP
jQuery 使用手册(六)
2009/09/23 Javascript
JavaScript call apply使用 JavaScript对象的方法绑定到DOM事件后this指向问题
2011/09/28 Javascript
jquery 插件学习(二)
2012/08/06 Javascript
E3 tree 1.6在Firefox下显示问题的修复方法
2013/01/30 Javascript
JS获取DropDownList的value值与text值的示例代码
2014/01/07 Javascript
Node.js中child_process实现多进程
2015/02/03 Javascript
js实现图片漂浮效果的方法
2015/03/02 Javascript
基于JS2Image实现圣诞树代码
2015/12/24 Javascript
javascript每日必学之循环
2016/02/19 Javascript
NodeJS实现视频转码的示例代码
2017/11/18 NodeJs
Angular数据绑定机制原理
2018/04/17 Javascript
微信小程序使用map组件实现检索(定位位置)周边的POI功能示例
2019/01/23 Javascript
微信小程序复选框实现多选一功能过程解析
2020/02/14 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
JS图片预加载三种实现方法解析
2020/05/08 Javascript
使用 UniApp 实现小程序的微信登录功能
2020/06/09 Javascript
Python获取Windows或Linux主机名称通用函数分享
2014/11/22 Python
python 文件操作api(文件操作函数)
2016/08/28 Python
浅谈编码,解码,乱码的问题
2016/12/30 Python
Python 使用元类type创建类对象常见应用详解
2019/10/17 Python
tensorflow 变长序列存储实例
2020/01/20 Python
一文读懂Python 枚举
2020/08/25 Python
python matplotlib绘制三维图的示例
2020/09/24 Python
10种CSS3实现的loading动画,挑一个走吧?
2020/11/16 HTML / CSS
美国杂志订阅折扣与优惠网站:Magazines.com
2016/08/31 全球购物
英国户外装备和冒险服装零售商:alloutdoor
2018/01/30 全球购物
高中生活自我鉴定
2014/01/18 职场文书
搞笑创意广告语
2014/03/17 职场文书
家长寄语大全
2014/04/02 职场文书
泸县召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
狂人日记读书笔记
2015/06/30 职场文书
2015年国庆节广播稿
2015/08/19 职场文书