Skip to content

v-model

  • v-model 指令才是真正意义上的双向绑定
    • 因为数据的流动是双向的
    • 可以作用于原声带表单元素
    • 也可以作用于自定义指令
  • v-model 作用于表单元素的时候 会借助于指令的钩子函数在元素挂载后把数据赋值给表单元素
    • 数据发生变化之后 在更新元素之前 把数据再次赋值给表单元素
    • 这就是数据变化引起 dom 变化的过程
  • 表单元素还会侦听相关事件
    • input 标签会监听 change 或者 input 事件
    • 在事件回调函数中修改数据的值
    • 这就是 dom 变化引起数据变化的过程
  • 当 v-model 作用于自定义组件的时候
    • 实际上是传递了一个名为 modelValue 的自定义属性
    • 以及监听了 update:modelValue 的自定义事件
    • 在事件回调函数中完成对数据的修改
  • 在自定义组件的场景中
    • 可以通过 v-model 参数的方式传入多个 v-model
    • 并且可以添加多个自定义修饰符

Welcome to the site