vue+elementui---下拉树形多选

  1. html部分
            <el-form-item label="施工员" prop="sgyIds">
              <treeselect style="width:100%"
                          v-model="form.sgyIdArr"
                          :options="deptUOptions"
                          :show-count="true"
                          placeholder="请选择"
                          :multiple="true"
                          @select="nodeSgySelect"
                          @deselect="nodeSgyCancelSelect"
                          :disable-branch-nodes="true"/>
            </el-form-item>

  2. 引入包
    import { treeselectuser } from '@/api/system/dept';
    import Treeselect from "@riophae/vue-treeselect";
    import "@riophae/vue-treeselect/dist/vue-treeselect.css";

  3. js初始化
    export default {
      name: "",
      components: { Treeselect },
      data() {
        return {
            deptUOptions: undefined,
        }
      }
    }

  4. js处理部分
    /** 查询部门人员下拉树结构 */
        getTreeselect() {
          treeselectuser().then(response => {
            this.deptUOptions = response.data;
            for (let deptElememt of this.deptUOptions) {
              this.doDept(deptElememt)
            }
          });
        },
        /** 区分部门和人员的处理 */
        doDept(dept){
          if (dept.treeFlag=='0'&&!dept.children){
            dept.children=[];
          }
          for (let deptElement of dept.children) {
            if (deptElement.treeFlag=='0'){
              this.doDept(deptElement)
            }
          }
        },
    
        nodeSgySelect(node, instanceId){
          this.form.sgyIdArr.push(node.id)
        },
        nodeSgyCancelSelect(node, instanceId){
        },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值