lazy:使用了这个修饰符将会从“input事件”变成change事件进行同步
<div id="example">
<input type="text" v-model.lazy="message">
<p>{{ message }}</p>
</div> new Vue({
el:"#example",
data:{
message:""
}
})
这样输入了数字并没有显示出来而是当移开光标后在触发
number
首先谁明这个number并不是限制用户的输入,而是将用户输入的数据尝试绑定为 js 中的 number 类型
举个例子,如果用户输入300
,data 中绑定的其实是'300'
(string),添加 number 指令后可以得到 300
(number)的绑定结果。
而如果用户输入的不是数字,这个指令并不会产生任何效果。
上代码:
1 <div id="example">
2 <input type="text" v-model.number="message">
3 <p>{{ message }}</p>
4 <button @click="assay()">获取当前的类型</button>
5 </div>
1 new Vue({
2 el:"#example",
3 data:{
4 message:""
5 },
6 methods:{
7 assay(){
8 alert(typeof this.message);
9 }
10 }
11 })
当不加number修饰符输入123456..数字的时候显示的类型为string
而加了number修饰符就变成了number类型
当你输入的不是数字就不起作用了
trim可以用来过滤前后的空格
当使用了trim修饰符后
这样就自动过滤用户输入的首尾空白字符