父组件如何获取子组件上的非prop属性

新手上路,请多包涵
    <FormItem label="建设单位:">
    <Select ref="JSCom" v-model="proData.proJSComName" filterable allow-create  data-type="JS" @on-create="createUnit" @on-open-change="getUnitList('JS')">
        <Option v-for="item in proJSComList" :value="item.id" :key="item.id">{{ item.name }}</Option>
    </Select>
</FormItem>
    <FormItem label="委托单位:">
        <Select ref="WTCom" v-model="proData.proWTComName" filterable allow-create  data-type="WT" @on-create="createUnit" @on-open-change="getUnitList('WT')">
            <Option v-for="item in proWTComList" :value="item.id" :key="item.id">{{ item.name }}</Option>
        </Select>
    </FormItem>
    <FormItem label="勘察单位:">
        <Select v-model="proData.proKCComName" filterable allow-create  data-type="WT" @on-create="createUnit" @on-open-change="getUnitList('KC')">
            <Option v-for="item in proKCComList" :value="item.id" :key="item.id">{{ item.name }}</Option>
        </Select>
    </FormItem>
methods: {
createUnit(){
    let type = this.$refs.JSCom.dataType;
    console.log(type);
    switch(type){
    caer 'JS':
    break
    case 'WT':
        break;
}
}
}

我的问题是我如何在createUnit方法里获取到我给Select子组件自定义的data-type来区分不同的子组件。我尝试使用$ref获取发现不行。试图通过给createUnit('WT')传参,发现会覆盖createUnit原本的参数.这样改怎样区分不同的子组件????

阅读 1.4k
3 个回答

需要区分的select 加个自定义属性 :xxxx = "(sign = 'JScom')"
data 里面 加上sign ,然后watch :sign,然后你就能收到不同的create的时间节点的赋值,就能区分了

this.$refs.JSCom.$el.dataset.dataType

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题