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 相关文章推荐
javascript 设计模式之单体模式 面向对象学习基础
Apr 18 Javascript
js 图片等比例缩放代码
May 13 Javascript
jQuery中:animated选择器用法实例
Dec 29 Javascript
JS实现浏览器状态栏文字闪烁效果的方法
Oct 27 Javascript
怎么引入(调用)一个JS文件
May 26 Javascript
JS实现的跨浏览器解析XML文件实例
Jun 21 Javascript
原生js实现选项卡功能
Mar 08 Javascript
基于jQuery选择器之表单对象属性筛选选择器的实例
Sep 19 jQuery
详解JavaScript 浮点数运算的精度问题
Jul 23 Javascript
vue 实现滚动到底部翻页效果(pc端)
Jul 31 Javascript
JavaScript将数组转换为链表的方法
Feb 16 Javascript
VUE解决跨域问题Access to XMLHttpRequest at
May 06 Vue.js
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操作文件类的函数代码(文件和文件夹创建,复制,移动和删除)
2011/11/10 PHP
Javascript 作用域使用说明
2009/08/13 Javascript
jQuery下通过replace字符串替换实现大小图片切换
2012/05/22 Javascript
jQuery图片滚动图片的效果(另类实现)
2013/06/02 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
js实现的全国省市二级联动下拉选择菜单完整实例
2015/08/17 Javascript
javascript多物体运动实现方法分析
2016/01/08 Javascript
jquery跟随屏幕滚动效果的实现代码
2016/04/13 Javascript
jQuery链式调用与show知识浅析
2016/05/11 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
jQuery中on方法使用注意事项详解
2017/02/15 Javascript
从0到1构建vueSSR项目之路由的构建
2019/03/07 Javascript
JavaScript如何实现监听键盘输入和鼠标监点击
2020/07/20 Javascript
vue+iview分页组件的封装
2020/11/17 Vue.js
为什么推荐使用JSX开发Vue3
2020/12/28 Vue.js
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
Python学习笔记(一)(基础入门之环境搭建)
2014/06/05 Python
Python中使用items()方法返回字典元素对的教程
2015/05/21 Python
Python的Socket编程过程中实现UDP端口复用的实例分享
2016/03/19 Python
Python操作rabbitMQ的示例代码
2019/03/19 Python
python抓取多种类型的页面方法实例
2019/11/20 Python
通过实例简单了解Python中yield的作用
2019/12/11 Python
Python基于time模块表示时间常用方法
2020/06/18 Python
python3 循环读取excel文件并写入json操作
2020/07/14 Python
Python 如何调试程序崩溃错误
2020/08/03 Python
解决Python3.8运行tornado项目报NotImplementedError错误
2020/09/02 Python
纯css3实现图片翻牌特效
2015/03/10 HTML / CSS
CSS3实现王者匹配时的粒子动画效果
2019/04/12 HTML / CSS
南非领先的在线旅行社:Travelstart南非
2016/09/04 全球购物
Troy-Bilt官网:草坪割草机、吹雪机、分蘖机等
2019/02/19 全球购物
艺术家策划的室内设计:Curious Egg
2019/03/06 全球购物
财务会计大学生自我评价
2014/04/09 职场文书
幼儿园教师个人总结
2015/02/05 职场文书
明确岗位职责
2015/02/14 职场文书
给病人的慰问信
2015/03/23 职场文书
安全生产协议书
2016/03/22 职场文书