v-model双向绑定详情

本文详细探讨了Vue中的v-model双向绑定机制,包括其基本使用、工作原理及修饰符的应用。v-model作为v-bind和v-on的语法糖,简化了表单数据的同步。文中介绍了lazy修饰符在失去焦点或回车时更新数据,number修饰符将输入内容转换为数字,以及trim修饰符用于去除内容首尾空格的功能。

1.v-model的基本使用

表单提交是开发中最常见的功能,也是用户交付很重要的手段

    比如说用户的登录和注册

这些都要求我们可以再代码的逻辑中获取用户提交的数据,我们通常用v-model指令来完成,本质上,v-model不过是语法糖,并在某种场景下进行一些特殊的处理

示例:

<div>
    <input type='text' v-model='message' />
    <p> {{message}} </p>
</div>

2.v-model的原理又是什么?

刚刚提到了语法糖,那么v-model的语法糖又是什么?

简单易懂来说v-model语法糖就是v-bind和v-on的结合

v-bind绑定value属性值

v-on来监听函数,函数会获取新值来绑定到属性中

通过事件对象参数event.target.value获取输入的内容,并且把这个内容赋值给message,从而实现双向绑定,更改message时input输入框会变。

由于v-bind和v-on的使用起来很麻烦,就有了v-model,所以说v-model就是v-bind和v-on的语法糖

上面的代码也可以用v-bind和v-on来完成

<input type='text' v-bind='message' v-on:input='message = $event.tagget.value' />

3.v-model修饰符

1. lazy修饰符:
默认情况下,v-model输入的数据,data 中的数据就会自动发生改变。我们可以在v-model后加上lazy,lazy 修饰符可以让数据在失去焦点或者回车时才会更新:
2.number修饰符:
在默认情况下,输入框中无论我们输入的是宇母还是数字,都会被当做字符串类型进行处理。但是如果我们希望处理的是数字类型,我们可以在v-model 后加上number,numnber修饰符可以让在输入框中输入的内容自动转成数字类型:
3. trim修饰符:
如果输入的内容首尾有很多空格,我们想要把空格去除的话,可以在v-model后加上trim,trim 修饰符可以过滤内容左右两边的空格

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值