萌新在尝试使用render()
函数编写基于vue3
的自定义组建时遇到需要使用自定v-model
, 查阅了很多资料都没有找到有如何在render()
函数中自定义的相关文章。
在查阅官网和相关书籍以及凭感觉之后琢磨出正确姿势,来给各位大佬做个报告。
v-model 的原理
首先我们要知道v-model
是那些事件和属性的语法糖。
<input v-model="value" />
等同于
<input :value="value" @input="value = $event.target.value" />
但是在自定义组建上使用
v-model
时,情况有所不同
<my-input v-model="value"></my-input>
v-model会执行下面的操作:
<my-input
:model-value="value"
@update:model-value="value = $event">
</my-input>
自定义组件使用 v-model
方法一 : 使用 input 事件触发 update:modelValue
自定义组件中的内部<input>
元素就必须将value属性绑定到