vue+element下拉列表级联操作, 层级自己定

5 篇文章 0 订阅
<template>
  <div>
    测试动态级联
    <el-cascader :props="props" ref="cascader"></el-cascader>
  </div>
</template>
<script type="text/javascript">
export default {
  data() {
    return {
      props: {
        lazy: true,
        lazyLoad: this.lazyLoadData
      },
      arr: []
    }

  },
  methods: {
    lazyLoadData(node, resolve) {
      let { level } = node;
      // console.log(level)
      let nodes = []

      setTimeout(() => {
        if (level === 0) {
          nodes = this.getDataSourceById();
          level++;
        } else if (level === 1) {
          console.log(node)
          this.arr.push(node.value)
          nodes = this.getDataSourceById2(1, 0) // 参数模拟后台接口
          level++
        } else if (level === 2) {
          this.arr.push(node.value)
          nodes = this.getDataSourceById3(1, 0) // 参数模拟后台接口

        }
        this.data = this.$refs['cascader'].getCheckedNodes()
        // console.log(this.arr)
        // 通过调用resolve将子节点数据返回,通知组件数据加载完成
        resolve(nodes);
      }, 1000);
    },
    getDataSourceById() {
      let arr = [{
          value: '测试1',
          label: '测试1'
        },
        {
          value: '测试2',
          label: '测试2'
        }
      ]
      return arr
    },
    getDataSourceById2(id, level) {
      let arr = [{
          value: '测试3',
          label: '测试3'
        },
        {
          value: '测试4',
          label: '测试4'
        }
      ]
      return arr
    },
    getDataSourceById3(id, level) {
      let arr = [{
          value: '测试5',
          label: '测试5',
          leaf: true
        },
        {
          value: '测试6',
          label: '测试6',
          leaf: true
        }
      ]
      return arr
    }
  }
}

</script>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨帆起航_200

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值