vue自定义组件上的v-model

2.2.0+ 新增

一个组件上的 v-model 默认会利用名为 valueprop 和名为 input 的事件,但是像单选框、复选框等类型的输入控件可能会将 value attribute 用于不同的目的。model 选项可以用来避免这样的冲突:

Vue.component('base-checkbox', {
  model: {
    prop: 'checked',
    event: 'change'
  },
  props: {
    checked: Boolean
  },
  template: `
    
  `
})

现在在这个组件上使用 v-model 的时候:

<base-checkbox v-model="lovingVue">base-checkbox>

这里的 lovingVue 的值将会传入这个名为 checkedprop。同时当 触发一个 change 事件并附带一个新的值的时候,这个 lovingVueproperty 将会被更新。

注意:你仍然需要在组件的 props 选项里声明 checked 这个 prop

你可能感兴趣的:(Vue,vue.js,前端)