<template>
 <el-cascader
    v-model="checkModel"
    :options="options"
    :placeholder="placeholder"
    :props="configParams"
    :collapse-tags="collapseTags"
    :filterable="filterable"
    @change="changeFunc"
    :clearable="clearable">
    </el-cascader>
</template>

<script>
export default {
  name:"selfCascader",
  model:{
    prop:"valueModel",
    event:'changeModel'
  },
  props:{
    placeholder:{
      type:null,
      default:null
    },
    collapseTags:{
      type:Boolean,
      default:false
    },
    clearable:{
      type:Boolean,
      default:false
    },
    filterable:{
      type:Boolean,
      default:false
    },
    options:{
      type:Array,
      default:null
    },
    configParams:{
      type:Object,
      default:null
    },
    valueModel:{
      type:null,
      default:null
    }
  },
  data(){
    return {
      checkModel:null
    }
  },
  watch:{
    valueModel(val){
      const _this = this
      _this.checkModel = val
    },
    checkModel(val){
      const _this = this
      _this.$emit('changeModel',val)
    }
  },
  mounted(){
    const _this = this
    _this.checkModel = _this.valueModel
  },
  methods:{
    changeFunc(){
      const _this = this
      _this.$emit('changeFunc')
    }
  }

}
</script>

<style>

</style>