v-model
是 Vue.js 中用于实现表单输入和应用状态(即数据)之间双向绑定的指令。其原理可以概括如下:
-
基本思想:
v-model
是v-bind
和v-on
的语法糖,它结合了输入元素的value
属性和input
事件。- 当输入元素的值发生变化时,
v-model
会自动更新 Vue 实例中对应的数据属性。 - 反之,当 Vue 实例中的数据属性发生变化时,
v-model
也会自动更新输入元素的值。
-
实现原理:
- 视图到模型(View -> Model):
- 当用户在输入元素(如文本框)中输入内容时,会触发
input
事件。 - Vue 监听到这个
input
事件后,会读取输入元素当前的value
值。 - Vue 将这个值赋给
v-model
绑定的数据属性,从而实现了从视图到模型的更
- 当用户在输入元素(如文本框)中输入内容时,会触发
- 视图到模型(View -> Model):