[前端暴龙机,Vue2.x 进化 Vue3 ] Day8. v-model 修饰符 -- 省下自己写 JS 处理的时间

v-model 修饰符

Vue 里面为 v-model 提供了一些可以用的修饰符,主要是可以帮我们限制一些使用者输入的行为
以下透过范例讲解每个修饰符帮我们做了甚麽事

1. .lazy

<!-- 在"change"时更新,而不是在"input"时更新 -->
<input v-model.lazy="msg">

还记得在前面有讲过当使用者每次操作输入框的值时(不管删除还是更新了一个字就会响应更新)
所以 .lazy 的作用是让 更新的动作不那麽的频繁
https://ithelp.ithome.com.tw/upload/images/20210917/20120722v7Ltdc6SrN.jpg
Day4. Vue的生命周期

(在"change"时更新,而不是在"input"时更新)
也就是当我们在输入的状态,是不会更新的,要等到 change 时才更新(离开 input 被 focus 的状态)

.lazy 范例

2. .number

<input v-model.number="num">
var app = new Vue({
  el: '#app',
  data:{
    num: 0 
  }
})

(a)..number会自动将使用者输入的值转成数值类型,如果输入的值无法parseFloat() 解析,则返回原始值
(b).即使 input type 指定为 number ,虽然看起来是数字,但资料型别会是 String
(c)..number 会限制只有 数值类型 的情况下才会写入
https://ithelp.ithome.com.tw/upload/images/20210917/20120722oKbfSspEk8.jpg

(c) 的部份比较特别下面一一解析~

当在输入状态时,虽然输入框还是看的到字串,但是离开 focus 状态,字串会自动消失不被写入
https://ithelp.ithome.com.tw/upload/images/20210813/20120722rqQ6FaUrJc.jpg
https://ithelp.ithome.com.tw/upload/images/20210813/20120722wA4BkXgrvd.jpg

当字串夹杂在数字中间,离开 focus 状态,字串後面的就算是数字也会跟着消失不被写入
https://ithelp.ithome.com.tw/upload/images/20210813/20120722JaMna975HC.jpg
https://ithelp.ithome.com.tw/upload/images/20210813/20120722qxgHyVNwv0.jpg

当为字串开头,就算後面接的是数字,就会变成(a) 的状况 ⟹ 返回原始值
https://ithelp.ithome.com.tw/upload/images/20210813/20120722drNj6iKecC.jpg

.number 范例

3. .trim

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

.trim 的作用为,去除输入框输入的头尾空白
https://ithelp.ithome.com.tw/upload/images/20210813/2012072240RQtO2WWN.jpg
字串是连起来的,头尾空白被删除,但是中间的空白仍存在
.trim 范例

┌( ಠ‿ಠ)┘ 之前没有用它,还特别去找 JS 正归表达式判断,现在想想好像傻傻的 XDDD


参考资料

Vue 官方文件


<<:  [Day 6] 餐前浓汤 pt.3-BeautifulSoup,第二型态

>>:  冒险村02 - Begin from linter(2)

新手发问:LIFF如何制作一个Flex Message发送讯息小工具?

因Flex Message目前无法直接发送讯息至5000人社群 想请教各位大大 如何使用LIFF制作...

[Day 27] 何谓趋势

N天後收盘价 若N天後收盘价 > 目前收盘价,趋势为正 若N天後收盘价 < 目前收盘价,...

Day30 Android - 回顾

反思 今天是铁人赛的最後一天了~ 说真的我挺开心能够完成这次的铁人赛并且跟着团体一起前进, 从我第一...

网路渗透测试工具-Legion

前几天讲了小蜘蛛 接下来会练习一系列的测试工具 Legion是一个开源的半自动网路渗透测试工具,适合...

【Day 25】建立 EKS on Outpost 的步骤(下)

tags: 铁人赛 AWS Outposts EKS Kubernetes 前情提要 昨天把 EKS...