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 相关文章推荐
jquery tools 系列 scrollable学习
Sep 06 Javascript
javascript中的startWith和endWith的几种实现方法
May 07 Javascript
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
Aug 13 Javascript
ListBox实现上移,下移,左移,右移的简单实例
Feb 13 Javascript
JavaScript中的Math 使用介绍
Apr 21 Javascript
使用JS轻松实现ionic调用键盘搜索功能(超实用)
Sep 06 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
Feb 19 Javascript
Vue.js实现在下拉列表区域外点击即可关闭下拉列表的功能(自定义下拉列表)
May 30 Javascript
解决js相同的正则多次调用test()返回的值却不同的问题
Oct 10 Javascript
详解node.js 事件循环
Jul 22 Javascript
nginx部署多个vue项目的方法示例
Sep 06 Javascript
原生js实现自定义滚动条
Jan 20 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
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
2014/08/15 PHP
详解WordPress中的头像缓存和代理中的缓存更新方法
2016/03/01 PHP
php数据访问之查询关键字
2016/05/09 PHP
php+ajax+json 详解及实例代码
2016/12/12 PHP
PHP mysqli事务操作常用方法分析
2017/07/22 PHP
PHP实现递归的三种方法
2020/07/04 PHP
表单的焦点顺序tabindex和对应enter键提交
2013/01/04 Javascript
document.getElementById获取控件对象为空的解决方法
2013/11/20 Javascript
jquery判断元素是否隐藏的多种方法
2014/05/06 Javascript
JavaScript拆分字符串时产生空字符的解决方案
2014/09/26 Javascript
深入理解javascript函数参数与闭包
2016/12/12 Javascript
servlet+jquery实现文件上传进度条示例代码
2017/01/25 Javascript
基于jQuery和CSS3实现APPLE TV海报视差效果
2017/06/16 jQuery
详解react使用react-bootstrap当轮子造车
2017/08/15 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
2017/08/24 Javascript
AngularJS中下拉框的基本用法示例
2017/10/11 Javascript
如何在vue中使用ts的示例代码
2018/02/28 Javascript
深入浅析Vue.js计算属性和侦听器
2018/05/05 Javascript
使用JS代码实现俄罗斯方块游戏
2018/08/03 Javascript
angularjs请求数据的方法示例
2019/08/06 Javascript
[01:06]DOTA2亚洲邀请赛专属珍藏-荧煌之礼
2017/03/24 DOTA
Python中字符串的常见操作技巧总结
2016/07/28 Python
对python-3-print重定向输出的几种方法总结
2018/05/11 Python
Python使用POP3和SMTP协议收发邮件的示例代码
2019/04/16 Python
Python实现猜年龄游戏代码实例
2020/03/25 Python
python学习将数据写入文件并保存方法
2020/06/07 Python
Python嵌入C/C++进行开发详解
2020/06/09 Python
深入浅析css3 中display box使用方法
2015/11/25 HTML / CSS
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
欧洲最大的美妆零售网站:Feelunique
2017/01/14 全球购物
保护地球的标语
2014/06/17 职场文书
销售人才自我评价范文
2014/09/27 职场文书
干部作风整顿个人剖析材料
2014/10/06 职场文书
毕业论文致谢范文
2015/05/14 职场文书
新闻稿格式范文
2015/07/18 职场文书
Android Gradle 插件自定义Plugin实现注意事项
2022/06/16 Java/Android