- 在表单
<input>
| <textarea>
| <select>
元素上创建双向数据绑定,会根据控件类型自动选取正确的方法来更新元素 v-model
会忽略所有表单元素的value
、checked
、selected
特性的初始值而总是将Vue实例的数据作为数据来源,在data选项中声明初始值v-mode
l在内部为不同的输入元素使用不同的属性和事件
text
和textarea
元素使用value
属性和input
事件checkbox
和radio
使用checked
属性和change
事件select
字段将value
作为prop
并将change
作为事件
- 要让组件的
v-model
生效,它应该
- 接受一个
value
值 - 在有新的值是触发
input
事件
- 需要通过触发事件来实现
value
的更新,所以是在父组件里写v-model
- 如果
v-model
表达式的初始值未能匹配任何选项,select
元素将被渲染为未选中的状态。在IOS中,不会触发change
事件,因此最好提供一个值为空的禁用选择<option disabled value="">请选择</option>
- 允许一个自定义组件在使用
v-model
时定制prop
和event
prop
属性指定组件value特性event
指定值变化时触发的事件
- 修饰符
<!-- 在“change”时而非“input”时更新 -->
<input v-model.lazy="msg” >
<!-- 将输入的值自动转换成数字类型 -->
<input v-model.number="age" type="number”>
<!-- 去除输入值的首尾空白字符 -->
<input v-model.trim="msg">