记录封装组件时使用v-model传值

首先子组件规定

  model: {
    prop: 'value',
    event: 'change'
  },
prop是接收的值,event是修改值后的事件名
但是还要在props里面接收一下
 value: {
      type: [Number, String, Array],
      default: ''
    },

我这里使用的是element的select,作了一层封装

 <el-select
    :value="currentValue"
    @change="handleChange"
  >

值得注意的是 这里不能使用v-model,这样会报错,子组件不能直接修改父组件的值。

   //修改事件 向父组件发送值   
handleChange(val) {
this.currentValue = val this.$emit('change', val) }

父组件接收

  <my-select v-model="value" />

 

 
posted @ 2021-04-23 15:08  资深BUG开发工程师  阅读(449)  评论(0)    收藏  举报