Vue.js表单控件实践


Posted in Javascript onOctober 27, 2016

最近项目中使用了vue替代繁琐的jquery处理dom的数据更新,个人非常喜欢,所以就上官网小小地实践了一把。

以下为表单控件的实践,代码敬上,直接新建html文件,粘贴复制即可看到效果

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>PlayAround2 Have Fun</title>
 <script src="https://cdn.jsdelivr.net/vue/1.0.26/vue.min.js"></script>
 <style>
  h2{
   text-decoration:underline;
  }
  .red{
   color: red;
  }
  .green{
   color: green;
  }
 </style>
</head>
<body>
 <div id="app">

  <h2>checkBox</h2>
  <input type="checkbox" v-model="checked">
  <label>{{checked}}</label>

  <h2>multi checkbox</h2>
  <input type="checkbox" id="Kobe" value="Kobe" v-model="names">
  <label for="Kobe">Kobe</label>
  <input type="checkbox" id="Curry" value="Curry" v-model="names">
  <label for="Curry">Curry</label>
  <input type="checkbox" id="Aaron" value="Aaron" v-model="names">
  <label for="Aaron">Aaron</label>
  <br>
  <span>Checked names: {{names | json}}</span>

  <h2>Radio</h2>
  <input type="radio" id="one" value="one" v-model="picked">
  <label for="one">one</label>
  <br>
  <input type="radio" id="two" value="two" v-model="picked">
  <label for="two">two</label>
  <br>
  <span>Picked: {{picked}}</span>

  <h2>Select</h2>
  <select v-model="selected">
   <option selected>Kobe</option>
   <option>Curry</option>
   <option>Aaron</option>
  </select>
  <span>Selected: {{selected}}</span>

  <h2>Multi Select</h2>
  <select multiple v-model="multiSelected">
   <option>Kobe</option>
   <option>Curry</option>
   <option>Aaron</option>
  </select>
  <span>Selected: {{multiSelected}}</span>


  <h2>Select with for</h2>
  <select v-model="selectedPlayer">
   <option v-for="option in options" :value="option.value">{{option.text}}</option>
  </select>
  <span>Selected: {{selectedPlayer}}</span>

  <h2>Lazy-改变更新的事件从input->change</h2>
  <input v-model="msg" lazy>
  <span>Msg:{{msg}}</span>

  <h2>Number(没啥吊用。。。.2->0.2,仅此而已吗?)</h2>
  <input v-model="age" number>
  <span>age:{{age}}</span>

  <h2>debounce-延迟更新view</h2>
  <p>Edit me<input v-model="delayMsg" debounce="500"></p>
  <span>delayMsg:{{delayMsg}}</span>

 </div>

 <script>
  var vm = new Vue({
   el:"#app",
   data:{
    checked:false,
    names:[],
    picked:"",
    selected:"",
    multiSelected:"",
    options:[
     {text:"Kobe",value:"Bryant"},
     {text:"Stephen",value:"Curry"},
     {text:"Aaron",value:"Kong"}
    ],
    selectedPlayer:"",
    msg:"",
    age:"",
    delayMsg:""
   },
   methods:{

   }
  })
 </script>
</body>
</html>

使用vue的几个优点:

1、只需关注model层的数据处理,无需处理复杂的view层更新,vue会在model改变时自动对view层进行更新;

2、vue提供一系列的小工具帮助开发者处理数据绑定中得问题,比如computed可以提供计算的扩展,还有过滤器、排序等支持;

3、代码简洁,分层清晰。html里进行数据绑定,js里只需处理数据以及后台交互;

4、提供自定义组件功能,进一步规范前端架构。目前暂时没有使用,后续研究研究。

以上就是目前使用vue的心得,暂时没有发现啥缺点,可能还不太深入,总体来说体验非常不错!

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

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

Javascript 相关文章推荐
JS对img标签进行优化使用onerror显示默认图像
Apr 24 Javascript
javascript父、子页面交互技巧总结
Aug 08 Javascript
JavaScript的null和undefined区别示例介绍
Sep 15 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
May 19 Javascript
浅析Ajax语法
Dec 05 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
Nov 22 Javascript
关于vue v-for循环解决img标签的src动态绑定问题
Sep 18 Javascript
react中Suspense的使用详解
Sep 01 Javascript
微信小程序wx.request的简单封装
Nov 13 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
Sep 11 Javascript
springboot+vue+对接支付宝接口+二维码扫描支付功能(沙箱环境)
Oct 15 Javascript
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
Feb 26 Vue.js
vue实现可增删查改的成绩单
Oct 27 #Javascript
vuex实现简易计数器
Oct 27 #Javascript
微信小程序  生命周期详解
Oct 27 #Javascript
require.js+vue开发微信上传图片组件
Oct 27 #Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 #Javascript
vue开发心得和技巧分享
Oct 27 #Javascript
js获取指定字符前/后的字符串简单实例
Oct 27 #Javascript
You might like
PHP面向对象法则
2012/02/23 PHP
ThinkPHP3.1.3版本新特性概述
2014/06/19 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
一个JQuery操作Table的代码分享
2012/03/30 Javascript
通过jQuery源码学习javascript(二)
2012/12/27 Javascript
Three.js源码阅读笔记(物体是如何组织的)
2012/12/27 Javascript
纯JS实现动态时间显示代码
2014/02/08 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
2014/04/04 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
探讨JavaScript语句的执行过程
2016/01/28 Javascript
学习Javascript面向对象编程之封装
2016/02/23 Javascript
JavaScript的String字符串对象常用操作总结
2016/05/26 Javascript
学习使用ExpressJS 4.0中的新Router的用法
2018/11/06 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
keep-alive不能缓存多层级路由菜单问题解决
2020/03/10 Javascript
vue同个按钮控制展开和折叠同个事件操作
2020/07/29 Javascript
解决Vue-cli无法编译es6的问题
2020/10/30 Javascript
[03:43]2014DOTA2西雅图国际邀请赛 newbee战队巡礼
2014/07/07 DOTA
Python常用的内置序列结构(列表、元组、字典)学习笔记
2016/07/08 Python
Python语言的变量认识及操作方法
2018/02/11 Python
python 定时器每天就执行一次的实现代码
2019/08/14 Python
python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
2020/03/05 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
HTML5实时语音通话聊天MP3压缩传输3KB每秒
2019/08/28 HTML / CSS
西班牙香水和化妆品购物网站:Arenal Perfumerías
2019/03/01 全球购物
如何唤起类中的一个方法
2013/11/29 面试题
竞争上岗演讲稿
2014/01/05 职场文书
大学活动策划书范文
2014/01/10 职场文书
春节请假条
2014/04/11 职场文书
应届大学生求职信
2014/07/20 职场文书
党员批评与自我批评思想汇报
2014/10/08 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
2015年入党决心书
2015/02/05 职场文书
2016暑期社会实践心得体会范文
2016/01/14 职场文书