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

Vue3自研开源Tree组件:人性化的拖拽API设计

针对Element Plus Tree组件拖拽功能API用的麻烦,小卷开发了一个API使用简单的JuanTree组件。拖拽功能用起来非常简单!

文章目录

    • 使用示例
      • allowDrag
      • allowDrop
      • 支持节点勾选
      • 支持dirty检测
      • 后台API交互
    • 源码实现

使用示例

组件的使用很简单:

在这里插入图片描述

通过ref引用tree组件,可操作其expose出来的方法,比如,保存节点操作(新增、删除和重命名节点)的变更、新增一级节点:

在这里插入图片描述

通过v-model绑定勾选项,data属性绑定初始化树形结构的嵌套数据,option-props用于绑定组件的选项:

在这里插入图片描述

allowDrop方法,用来让用户控制哪些节点不允许drop操作;当然哪些节点不允许drag也可以由相应的方法来控制,比如下面的逻辑控制:

在这里插入图片描述

allowDrag

比如44这个节点无法拖动:

在这里插入图片描述

allowDrop

演示拖拽drop的限制,Java Web节点不能释放在a11a22节点上,超过了5级限制。

在这里插入图片描述

支持节点勾选

在拖拽完成后,节点的勾选状态能保证一致性

在这里插入图片描述

支持dirty检测

在编辑节点的情况下,要先保存变更才能继续拖拽

在这里插入图片描述

后台API交互

提供了便捷的拖拽回调接口

在这里插入图片描述

这里给用户进行拖拽的后台API提供了必要的参数,如果参数不够可以后期再扩展,同时提供了回调的done函数,调用了done()才更新拖拽后的节点,非常的人性化!

在这里插入图片描述

源码实现

见后续会员教程分享

http://www.lryc.cn/news/409931.html

相关文章:

  • MYSQL--触发器详解
  • C++实用指南:Lambda 表达式的妙用
  • FastAPI(七十八)实战开发《在线课程学习系统》接口开发-- 评论
  • 基于springboot+vue+uniapp的居民健康监测小程序
  • TypeScript基础【学习笔记】
  • 树莓派物联网服务器搭建流程:集成 Node.js、InfluxDB、Grafana 和 MQTT 协议
  • typescript 断言
  • 期刊评价指标及其查询方法
  • 巴斯勒相机(Basler) ACE2 dart 系列说明和软件
  • 【Pycharm中anaconda使用介绍】
  • 2024下半年,前端的技术风口来了
  • Spock Unit Test in Java
  • := 符号python
  • UPLOAD-LABS靶场[超详细通关教程,通关攻略]
  • 测试面试宝典(三十七)—— 接口测试中的加密参数如何处理?
  • 秋招突击——7/23——百度提前批面试准备和正式面试
  • 学习日记:数据类型2
  • Django Web框架——05
  • 【React】项目的目录结构全面指南
  • Django学习(二)
  • Java引用类型
  • ubunto安装redis
  • 【odoo17 | Owl】前端js钩子调用列表选择视图
  • MATLAB基础:函数与函数控制语句
  • 2024.7.30 搜索插入位置(二分法)
  • Socket通信(C++)
  • 小白学大模型:LLaMA-Factory 介绍与使用
  • java算法day26
  • docker笔记7-dockerfile
  • Spring-cloud Alibaba组件--Dubbo