当前位置: 首页 > article >正文

通过el-tree 懒加载树,创建国家地区四级树

 全国四级行政地区树数据库sql下载路径:【免费】全国四级地区(省市县)数据表sql资源-CSDN文库icon-default.png?t=N7T8https://download.csdn.net/download/weixin_51722520/88469807?spm=1001.2014.3001.5503         

        我在后台获取地区信息添加了限制,只获取parentid为当前的地区没所以没有显示全国数据

        前端使用饿了么的组件,添加lazy做懒加载,不需要将数据递归组装成树结构返回,每次点击时,向后端发送请求,请求当前父级下的子数据 。

<el-card style="height: 95%">
     <div style="  height: 520px; display: block;overflow-y: scroll;">
      <el-tree lazy :props="defaultProps" :load="loadNode" @node-click="handleNodeClick"></el-tree>
     </div>
</el-card>

           绑定数据结构,label为展示的数据,isLeaf为是否是子节点,后端传值时,将isLeaf设置为true即可。

   defaultProps: {
                    label: "name",
                    isLeaf: "isLeaf",
                },

        loadNode会在页面被点击时自动调用,resolve回调方法会将查询到的数据,放入到树中,不需要将数据绑定。

        这里将数据做了判断,为空时给他赋值为141100000000,不为空则将node节点id给到父级id

         loadNode就是树的点击事件触发的方法

        loadNode回调resolve只接受List类型的数据

    //懒加载时查询叶子节点
            loadNode(node, resolve) {
                let params = node.data ? ('parent.id=' + node.data.id) : ('id=141100000000')
                this.get(ctx + '/basicinfo/region/getLeftNode?' + params).then((res) => {
                    resolve(res)
                })
            },

         将点击时的node节点调用(可以不用写,与树没有太大联系,只是我业务中会用这个方法)

    handleNodeClick(node, e) {
                 console.log("树被点击时调用事件")
            },

 


http://www.kler.cn/a/107409.html

相关文章:

  • Kafka - 启用安全通信和认证机制_SSL + SASL
  • javascript 函数【知识点整理】
  • 免费HTML模板和CSS样式网站汇总
  • WordPress 2024主题实例镜像
  • Flink CDC(SQL Client)连接 MySQL 数据库教程
  • 【大数据技术基础 | 实验十】Hive实验:部署Hive
  • 数组与链表算法-矩阵算法
  • FileInputStream文件字节输入流
  • 使用easypoi-spring-boot-starter 4.1.1导入excel报错NoSuchMethodError和NoSuchMethodError
  • python 字符串str与字典dict转换
  • 【Qt】窗口和对话框区别、主窗口和二级窗口区别、QMainWindow和QDialog区别
  • Ubuntu deadsnakes 源安装新版 python
  • 蓝桥杯 Java k倍区间
  • 0047【Edabit ★☆☆☆☆☆】Minimal I: If Boolean Then Boolean
  • RK3588开发笔记-USB3.0接口调试
  • VMware打开共享虚拟机后找不到/mnt/hgfs/文件夹,以及不能拖拽/复制粘贴等操作,ubuntu不能安装VMware tools
  • 3台Centos7快速部署Kafka集群
  • 如何在Node.js中使用环境变量或命令行参数来设置HTTP爬虫ip?
  • 【Proteus仿真】【Arduino单片机】PWM电机调速
  • Mysql的JDBC知识点
  • 【C++的OpenCV】第十四课-OpenCV基础强化(二):访问单通道Mat中的值
  • 轻量级仿 Spring Boot=嵌入式 Tomcat+Spring MVC
  • Qt下实现支持多线程的单例模式
  • Redis进军磁盘存储
  • Spring常见面试题
  • 大数据采集技术与预处理学习一:大数据概念、数据预处理、网络数据采集