vue+element树组件 实现树懒加载的过程详解


Posted in Javascript onOctober 21, 2019

一.页面样式

vue+element树组件 实现树懒加载的过程详解

二.数据库

vue+element树组件 实现树懒加载的过程详解

 三.前端页面代码

<template>
 <el-tree :props="props"
   :load="loadNode"
   lazy
   show-checkbox>
 </el-tree>
</template>

<script>
export default {
 data () {
 return {
  props: {
  label: 'name',
  children: 'zones',
  isLeaf: 'leaf',

  },
 };
 },
 methods: {
 loadNode (node, resolve) {
  //如果展开第一级节点,从后台加载一级节点列表
  if (node.level == 0) {
  this.loadfirstnode(resolve);
  }
  //如果展开其他级节点,动态从后台加载下一级节点列表
  if (node.level >= 1) {
  this.loadchildnode(node, resolve);
  }
 },
 //加载第一级节点
 loadfirstnode (resolve) {

  this.api({
  url: "/test/tree",
  method: "post",

  }).then(data => {
  console.log(data);
  //this.data = data.list;
  return resolve(data.list);

  })
 },
 //加载节点的子节点集合
 loadchildnode (node, resolve) {
  this.api({
  url: "/test/tree2",
  method: "post",
  params: {
   id: node.data.id
  }
  }).then(data => {
  console.log(data);
  //this.defaultProps.children = data.list;
  return resolve(data.list);

  })
 }

 }

}
</script>

controller层

@PostMapping("/tree")
 public JSONObject tree( ) {return userService.tree();
 }

 @PostMapping("/tree2")
 public JSONObject tree(@RequestParam Map<String, Object> user) {return userService.tree2(user);
 }

service层

/**
  * 树
  */
 JSONObject tree();
 
 /**
  * 树
  */
 JSONObject tree2(Map<String, Object> user);

serviceImpl层

@Override
 public JSONObject tree() {
  List<JSONObject> list=userDao.tree();
  System.out.println(list);
  return CommonUtil.successPage(list);
 }
 @Override
 public JSONObject tree2(Map<String, Object> user) {
  int codept=Integer.parseInt(user.get("id").toString()) ;
  List<JSONObject> list=userDao.tree2(codept);
  return CommonUtil.successPage(list);
 }

dao层

/**
  * 树
  */
 List<JSONObject> tree();
 List<JSONObject> tree2(@Param("codept")int codept);

mapper层

<select id="tree" resultType="com.alibaba.fastjson.JSONObject">
  SELECT [id]
  ,[codept]
  ,[name]
 FROM [dbo].[Dept] WHERE codept ='0'
 </select>

 <select id="tree2" resultType="com.alibaba.fastjson.JSONObject">
  SELECT [id]
  ,[codept]
  ,[name]
 FROM [dbo].[Dept] WHERE codept =#{codept}
 </select>

总结

以上所述是小编给大家介绍的vue+element树组件 实现树懒加载的过程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Three.js源码阅读笔记(物体是如何组织的)
Dec 27 Javascript
jquery实现向下滑出的二级导航下滑菜单效果
Aug 25 Javascript
微信js-sdk分享功能接口常用逻辑封装示例
Oct 13 Javascript
详解layui弹窗父子窗口之间传参数的方法
Jan 16 Javascript
node.js连接mysql与基本用法示例
Jan 05 Javascript
JavaScript 九种跨域方式实现原理
Feb 11 Javascript
用原生 JS 实现 innerHTML 功能实例详解
Apr 03 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
Apr 09 Javascript
Vue内部渲染视图的方法
Sep 02 Javascript
在vue中动态添加class类进行显示隐藏实例
Nov 09 Javascript
js面向对象之实现淘宝放大镜
Jan 15 Javascript
JavaScript快速调试的两个技巧
Nov 04 Javascript
JavaScript函数IIFE使用详解
Oct 21 #Javascript
vue实现侧边栏导航效果
Oct 21 #Javascript
vue实现吸顶、锚点和滚动高亮按钮效果
Oct 21 #Javascript
vue-cli基础配置及webpack配置修改的完整步骤
Oct 20 #Javascript
关于Vue中axios的封装实例详解
Oct 20 #Javascript
JavaScript相等运算符的九条规则示例详解
Oct 20 #Javascript
Vue.js下拉菜单组件使用方法详解
Oct 19 #Javascript
You might like
利用PHP制作简单的内容采集器的原理分析
2008/10/01 PHP
mac下多个php版本快速切换的方法
2016/10/09 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
2019/01/15 PHP
javascript 异步页面查询实现代码(asp.net)
2010/05/26 Javascript
javascript正则表达式总结
2016/02/29 Javascript
详解js的延迟对象、跨域、模板引擎、弹出层、AJAX【附实例下载】
2016/12/19 Javascript
Easyui Datagrid自定义按钮列(最后面的操作列)
2017/07/13 Javascript
JS中Swiper的使用和轮播图效果
2017/08/11 Javascript
js实现动态改变radio状态的方法
2018/02/28 Javascript
使用js实现将后台传入的json数据放在前台显示
2018/08/06 Javascript
Vue监听数据渲染DOM完以后执行某个函数详解
2018/09/11 Javascript
vue头部导航动态点击处理方法
2018/11/02 Javascript
vue cli 3.0 搭建项目的图文教程
2019/05/17 Javascript
nodejs简单抓包工具使用详解
2019/08/23 NodeJs
基于Vue的商品主图放大镜方案详解
2019/09/19 Javascript
Python接收Gmail新邮件并发送到gtalk的方法
2015/03/10 Python
浅谈Python中数据解析
2015/05/05 Python
python验证码识别的实例详解
2016/09/09 Python
Python连接PostgreSQL数据库的方法
2016/11/28 Python
python实现八大排序算法(2)
2017/09/14 Python
Python测试网络连通性示例【基于ping】
2018/08/03 Python
Pandas之Fillna填充缺失数据的方法
2019/06/25 Python
python实现学生信息管理系统(精简版)
2020/11/27 Python
CSS3中Transform动画属性用法详解
2016/07/04 HTML / CSS
英国的屈臣氏:Boots博姿
2017/12/23 全球购物
美国牙科折扣计划:DentalPlans.com
2019/08/26 全球购物
Kendra Scott官网:美国领先的时尚配饰品牌
2020/10/22 全球购物
DJI全球:DJI Global
2021/03/15 全球购物
一些Solaris面试题
2013/03/22 面试题
初二物理教学反思
2014/01/29 职场文书
董事长秘书职责
2014/01/31 职场文书
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
教师辞职书范文
2015/02/26 职场文书
社区党支部公开承诺书
2015/04/29 职场文书
优化经济发展环境工作总结
2015/08/11 职场文书
Javascript的promise,async和await的区别详解
2022/03/24 Javascript