Vue input控件通过value绑定动态属性及修饰符的方法


Posted in Javascript onMay 03, 2017

对于单选按钮,勾选框及选择列表选项, v-model 绑定的 value 通常是静态字符串(对于勾选框是逻辑值):

<!-- 当选中时,`picked` 为字符串 "a" -->
<input type="radio" v-model="picked" value="a">
<!-- `toggle` 为 true 或 false -->
<input type="checkbox" v-model="toggle">
<!-- 当选中时,`selected` 为字符串 "abc" -->
<select v-model="selected">
 <option value="abc">ABC</option>
</select>

但是有时我们想绑定 value 到 Vue 实例的一个动态属性上,这时可以用 v-bind 实现,并且这个属性的值可以不是字符串。

举个最容易认知的例子

<input type="radio" v-model="pick" v-bind:value="a">
//当只有v-model的情况下,我们绑定了VUE实例中的pick这个数据,而这数据往往都是字符串或者是逻辑值,而如今通过v-bind绑定value,意味着,value是一个可变的数据 a,而不是字符串'a',而v-model在这个控件选定后的值就是指向value,而用v-bind绑定后,指向的值又是一个动态属性,所以此时就可以通过a这个动态属性来更改v-model绑定的值,其他的控件也是如此,比如select等
// 当选中时
vm.pick === vm.a

.lazy

在默认情况下, v-model 在 input 事件中同步输入框的值与数据 (除了 上述 IME 部分),但你可以添加一个修饰符 lazy ,从而转变为在 change 事件中同步:

//测试是在失去焦点的时候才更新,而不是实时更新

<input v-model.lazy="msg" >

.number

如果想自动将用户的输入值转为 Number 类型(如果原值的转换结果为 NaN 则返回原值),可以添加一个修饰符 number 给 v-model 来处理输入值:

<input v-model.number="age" type="number">
{{typeof age}}//如果输入的是字符串则是string,如果是数字字符串则转换成number

这通常很有用,因为在 type=”number” 时 HTML 中输入的值也总是会返回字符串类型。

.trim

如果要自动过滤用户输入的首尾空格,可以添加 trim 修饰符到 v-model 上过滤输入:

<input v-model.trim="msg">

以上所述是小编给大家介绍的Vue input控件通过value绑定动态属性及修饰符的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
select 控制网页内容隐藏于显示的实现代码
May 25 Javascript
javascript 仿QQ滑动菜单效果代码
Sep 03 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
Mar 17 Javascript
有关于eclipse配置spket需要注意的一些地方
Apr 07 Javascript
jquery与prototype框架的详细对比
Nov 21 Javascript
jQuery中ajax的load()方法用法实例
Dec 26 Javascript
JS实现仿QQ聊天窗口抖动特效
May 10 Javascript
jQuery深拷贝Json对象简单示例
Jul 06 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
Oct 21 Javascript
Bootstrap如何激活导航状态
Mar 22 Javascript
使用Vue-Router 2实现路由功能实例详解
Nov 14 Javascript
分享一款超好用的JavaScript 打包压缩工具
Apr 26 Javascript
ES6中参数的默认值语法介绍
May 03 #Javascript
Express之get,pos请求参数的获取
May 02 #Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
May 02 #Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
May 02 #Javascript
JavaScript比较两个数组的内容是否相同(推荐)
May 02 #Javascript
xmlplus组件设计系列之分隔框(DividedBox)(8)
May 02 #Javascript
xmlplus组件设计系列之树(Tree)(9)
May 02 #Javascript
You might like
把77A收信机改造成收音机
2021/03/02 无线电
php中使用DOM类读取XML文件的实现代码
2011/12/14 PHP
thinkPHP2.1自定义标签库的导入方法详解
2016/07/20 PHP
php使用curl下载指定大小的文件实例代码
2017/09/30 PHP
原生php实现excel文件读写的方法分析
2018/04/25 PHP
浅谈php的TS和NTS的区别
2019/03/13 PHP
Jquery ajaxsubmit上传图片实现代码
2010/11/04 Javascript
jQuery中hide()方法用法实例
2014/12/24 Javascript
JS实现兼容火狐及IE iframe onload属性的遮罩层隐藏及显示效果
2016/08/23 Javascript
基于JavaScript实现全选、不选和反选效果
2017/02/15 Javascript
JavaScript实现二分查找实例代码
2017/02/22 Javascript
vue嵌套路由与404重定向实现方法分析
2018/05/04 Javascript
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
深入浅析javascript函数中with
2018/10/28 Javascript
layui实现鼠标移动到单元格上显示数据的方法
2019/09/11 Javascript
在vue项目中promise解决回调地狱和并发请求的问题
2020/11/09 Javascript
vue中activated的用法
2021/01/03 Vue.js
Python实现多线程抓取妹子图
2015/08/08 Python
Python标准库inspect的具体使用方法
2017/12/06 Python
Python matplotlib画图实例之绘制拥有彩条的图表
2017/12/28 Python
python实现画圆功能
2018/01/25 Python
Python3.6.0+opencv3.3.0人脸检测示例
2018/05/25 Python
Python使用Chrome插件实现爬虫过程图解
2020/06/09 Python
新秀丽拉杆箱美国官方网站:Samsonite美国
2016/07/25 全球购物
new修饰符是起什么作用
2015/06/28 面试题
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
水污染治理专业毕业生推荐信
2013/11/14 职场文书
初三化学教学反思
2014/01/23 职场文书
员工评语范文
2014/12/31 职场文书
物业工程部经理岗位职责
2015/04/09 职场文书
走进毛泽东观后感
2015/06/04 职场文书
2019奶茶店创业计划书范本!
2019/07/15 职场文书
导游词之河北白洋淀
2020/01/15 职场文书
Python实现学生管理系统(面向对象版)
2021/06/24 Python
MySQL配置主从服务器(一主多从)
2021/08/07 MySQL
MYSQL事务的隔离级别与MVCC
2022/05/25 MySQL