Vue.js学习笔记——表单控件实践
最近项目中使用了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学习笔记——表单控件实践的更多相关文章
- Vue.js学习 Item9 – 表单控件绑定
基础用法 可以用 v-model 指令在表单控件元素上创建双向数据绑定.根据控件类型它自动选取正确的方法更新元素.尽管有点神奇,v-model 不过是语法糖,在用户输入事件中更新数据,以及特别处理一些 ...
- vue.js 2的表单控件
静下心,抄一段sample,以后可以快点到这里来抄...: <!DOCTYPE html> <html> <head> <meta charset=" ...
- Vue 监视数据总结 && 表单控件使用总结
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...
- MiniUI学习笔记1-表单控件
1.输入框样式 class="mini-textbox" //普通输入框 class="mini-password" //密码输入框 class="m ...
- Vue.js学习笔记 第七篇 表单控件绑定
本篇主要说明表单控件的数据绑定,这次没有新的知识点 文本框 1.普通文本框 <div id="app-1"> <p><input v-model=&q ...
- vue.js基础知识篇(3):计算属性、表单控件绑定
第四章:计算属性 为了避免过多的逻辑造成模板的臃肿不堪,可使用计算属性来简化逻辑. 1.什么是计算属性 <!DOCTYPE html><html lang="en" ...
- Vue.js 学习笔记 第6章 表单与v-model
本篇目录: 6.1 基本用法 6.2 绑定值 6.3 修饰符 表单类控件承载了一个网页数据的录入与交互,本章将介绍如何使用指令v-model完成表单的数据双向绑定. 6.1 基本用法 表单控件在实际业 ...
- Vue表单控件绑定
前面的话 本文将详细介绍Vue表单控件绑定 基础用法 可以用 v-model 指令在表单控件元素上创建双向数据绑定.它会根据控件类型自动选取正确的方法来更新元素.v-model本质上不过是语法糖,它负 ...
- vue表单控件绑定(表单数据的自动收集)
v-model指令 你可以用 v-model 指令在表单控件元素上创建双向数据绑定.它会根据控件类型自动选取正确的方法来更新元素.尽管有些神奇 但 v-model 本质上不过是语法糖,它负责监听用户的 ...
随机推荐
- OpenStack入门之【OpenStack-havana】之单网卡-All In One 安装(基于CentOS6.4)
这篇文章是自己的一篇老文,分享下,请君慢用.... =========================================== [特别申明]:经过了一段时间的不断学习加不断的测试得出本文, ...
- Windows系统的文件浏览器如何触发刷新
最近开发一个Drive程序,修改注册表添加System Folder Drive后需要通知已打开的每个文件浏览器刷新.最初选择获取对应窗体的句柄并发送WM_KEYDOWN.WM_KEYUP的VK_F5 ...
- WCF错误"The maximum message size quota for incoming messages (65536) has been exceeded."
错误原因有三:超过最大接受的传输值 1.webconfig或者 app.config 文件中的binding 节点进行 配置 maxBufferSize="2147483647" ...
- 安卓使用Root权限实现后台模拟全局按键、触屏事件方法(类似按键精灵)
继续在网上搜索安卓按键模拟(其实那时都不知道用什么关键字好了,能想到的关键字都用遍了,但是搜索出来的结果,都是之前提到的那几个依赖源码环境和系统权限的方案).发现有很多介绍ADB调试,向手机发送按键事 ...
- 【CF903G】Yet Another Maxflow Problem 线段树
[CF903G]Yet Another Maxflow Problem 题意:一张图分为两部分,左边有n个点A,右边有m个点B,所有Ai->Ai+1有边,所有Bi->Bi+1有边,某些Ai ...
- CentOS 6.8下更改Apache默认网站安装目录
首先,当我们搭建好LAMP环境后,Apache服务器默认的网站安装目录是/var/www/html 然而我们搭建项目时为了方便,我们是按照自己的意愿更改网站目录的 现在假设,按照意愿设定的网站目录为/ ...
- C3P0连接池配置(C3P0Utils.java)
配置文件 c3p0-config.xml <?xml version="1.0" encoding="UTF-8"?> <c3p0-confi ...
- HOJ-1005 Fast Food(动态规划)
Fast Food My Tags (Edit) Source : Unknown Time limit : 3 sec Memory limit : 32 M Submitted : 3777, A ...
- CVPR2018资源汇总
CVPR 2018大会将于2018年6月18~22日于美国犹他州的盐湖城(Salt Lake City)举办. CVPR2018论文集下载:http://openaccess.thecvf.com/m ...
- HDU 6343 - Problem L. Graph Theory Homework - [(伪装成图论题的)简单数学题]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6343 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...