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 相关文章推荐
jquery乱码与contentType属性设置问题解决方案
Jan 07 Javascript
JS 修改URL参数(实现代码)
Jul 08 Javascript
jquery引用方法时传递参数原理分析
Oct 13 Javascript
jQuery实现拖拽效果插件的方法
Mar 23 Javascript
jquery预加载图片的方法
May 27 Javascript
跟我学习javascript的arguments对象
Nov 16 Javascript
Bootstrap表格和栅格分页实例详解
May 20 Javascript
详解AngularJS ui-sref的简单使用
Apr 24 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
Apr 23 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
Sep 04 Javascript
Vue中全局变量的定义和使用
Jun 05 Javascript
Jquery cookie插件实现原理代码解析
Aug 04 jQuery
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仿微信发红包领红包效果
2016/10/30 PHP
/etc/php-fpm.d/www.conf 配置注意事项
2017/02/04 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
屏蔽F1~F12的快捷键的js函数
2010/05/06 Javascript
HTML颜色选择器实现代码
2010/11/23 Javascript
js动态生成指定行数的表格
2013/07/11 Javascript
js中array的sort()方法使用介绍
2014/02/20 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
解析浏览器端的AJAX缓存机制
2016/06/21 Javascript
jquery自定义表单验证插件
2016/10/12 Javascript
简单谈谈Javascript函数中的arguments
2017/02/09 Javascript
js评分组件使用详解
2017/06/06 Javascript
jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
2017/08/23 jQuery
Bootstrap实现可折叠分组侧边导航菜单
2018/03/07 Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
2018/09/10 Javascript
JS 实现微信扫一扫功能
2018/09/14 Javascript
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
在Vue中使用HOC模式的实现
2020/08/23 Javascript
详解Python中__str__和__repr__方法的区别
2015/04/17 Python
Python爬取网易云音乐热门评论
2017/03/31 Python
Python实现爬虫爬取NBA数据功能示例
2018/05/28 Python
浅谈python中统计计数的几种方法和Counter详解
2019/11/07 Python
pycharm不能运行.py文件的解决方法
2020/02/12 Python
jupyter notebook清除输出方式
2020/04/10 Python
基于opencv实现简单画板功能
2020/08/02 Python
婴儿鞋,独特的婴儿服装和配件:Zutano
2018/11/03 全球购物
香港彩色隐形眼镜在线商店:Stunninglens(全球免费送货)
2019/05/10 全球购物
学生党员思想汇报
2013/12/28 职场文书
上班迟到检讨书
2014/01/10 职场文书
医药学专业大学生职业生涯规划书论文
2014/01/21 职场文书
高中生的自我鉴定范文
2014/01/24 职场文书
《囚绿记》教学反思
2014/03/01 职场文书
聚美优品恶搞广告词
2014/03/14 职场文书
酒店开业庆典策划方案
2014/05/28 职场文书