vue3 绑定多个model技巧之 抽取useVModel


test.vue





form.vue





重点来了抽取   

useVModel.js
import { computed, getCurrentInstance } from 'vue'

export const useVModel = (props, propName) => {
  const vm = getCurrentInstance().proxy

  return computed({
    get() {
      return props[propName]
    },
    set(value) {
      vm.$emit(`update:${propName}`, value)
    },
  })
}

亲测效果如下

相关