zoukankan      html  css  js  c++  java
  • el-select和el-cascader的visible-change下拉框隐藏时触发相关事件(下拉框下拉显示时不触发)

    原文:https://blog.csdn.net/CarryBest/article/details/79959389

    今天做项目时,用elementUI框架,需要下拉框隐藏时出发某个函数,用了visible-change这个函数,发现点击时会触发两次我自己定义的函数,看了下官网的解释 :下拉框出现/隐藏时触发   如果只想在下拉框隐藏时触发该怎么做呢?下面是解决办法:
    官网定义:
    Select Events


    @visible-change 函数里面传递两个参数(第一个为回调参数,第二个为自己定义的参数)

    前台页面:

    <el-select v-model="AREACODE" placeholder="请选择" clearable @visible-change="changeValue1($event,AREACODE)">
        <el-option 
            v-for="item in AreaOptions" 
            :key="item.AREACODE" 
            :label="item.NAME" 
            :value="item.AREACODE"> 
        </el-option>
    </el-select>

    JS:

    changeValue1:function(callback,vc){ //只有回调参数为false时才触发 ctx.getAreaListDataSearch(vc,1)这个函数;
    console.log("回调参数"+callback);
    if(!callback){
    var ctx = this;
    ctx.AREACODE2='请选择';
    if(vc!=""){
    ctx.show2 = true;
    ctx.getAreaListDataSearch(vc,1);
    }
    }
    },

    这样就解决了这个函数会默认调用两次你自己定义函数的问题

    备注:

    el-select的visible-change="changeValue1($event,AREACODE) 会传递两个参数,即把选中的值也会传给函数,但是el-cascader的不会传这个值,那么如何获取选中的值呢,

    方法一:

    判断this.$refs['cascaderAddr'].getCheckedNodes()非空列表,使用this.$refs['cascaderAddr'].getCheckedNodes()[0] 参考:https://blog.csdn.net/lijiabinbbg/article/details/97396812

    方法二:使用change

    <el-cascader
      id="el-cascader"
      v-model.trim="formTemp.service"
      :disabled="currentStep!='apply'"
      :options="serviceOptions"
      :props="{ expandTrigger: 'hover' }"
      :show-all-levels="true"
      separator="."
      @change="handleServiceSelect"
      >
    </el-cascader>

    在methods中定义

        handleServiceSelect(serviceInfo) {
          // 这块会自动传这个serviceInfo值的注意var serviceKey = serviceInfo.join('.')
        },
  • 相关阅读:
    hive之insert导入分区数据
    Hive数据倾斜及优化方案
    Hive中join关键字运行机制及使用详解
    如何去编写一个定时器?
    MapReduce运行原理详解
    nfs共享服务搭建
    IDEA中Java方法的抽取
    阿里巴巴开发规约(Alibaba Java Coding Guidelines)安装介绍
    IDEA集成vue
    写给初学asp.net的新人们 新手学习经验
  • 原文地址:https://www.cnblogs.com/robinunix/p/11190611.html
Copyright © 2011-2022 走看看