Web前端开发网

web.fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 文章投稿
  • 关于我们
资源分类
AI智能酷站推荐招聘/兼职框架/库模块/管理移动端UI框架Web-UI框架Js插件CSS相关在线工具建站资源 更多
网站收录 / 问题反馈

VueDraggablePlus

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

VueDraggablePlus
网站地址:https://vue-draggable-plus.pages.dev
GitHub:https://github.com/Alfred-Skyblue/vue-draggable-plus
描述信息:支持 Vue2 和 Vue3 的拖拽组件
访问官网
GitHub

由于 Sortablejs 的 vue3 组件一直没有更新,已经跟 vue3 严重脱节,所以诞生了这个项目,这个组件是基于 Sortablejs 的,在 Sortablejs 官方以往的 Vue 组件中,都是通过使用组件作为列表的直接子元素来实现拖拽列表,当我们使用一些组件库时,如果组件库中没有提供列表根元素的插槽,我们很难实现拖拽列表,vue-draggable-plus 完美解决了这个问题,它可以让你在任何元素上使用拖拽列表,我们可以使用指定元素的选择器,来获取到列表根元素,然后将列表根元素作为 Sortablejs 的 container


核心优势

  1. 全量能力继承 完整保留 Sortablejs 所有原生能力,拖拽动画、占位样式、分组拖拽、限制拖动等功能一应俱全,满足绝大多数业务场景。

  2. 全版本Vue兼容 告别版本割裂问题,Vue2 老项目、Vue3 新项目可无缝接入,不用修改大量业务代码。

  3. 多模式灵活调用 提供组件、指令、Hooks函数三种使用方式,无论是简单列表还是复杂嵌套页面,都能按需选择。

  4. 原生TS友好 采用TypeScript全量开发,类型提示完善,配套完整类型文档,大幅降低类型报错问题。

  5. 双向绑定极简开发 原生支持 v-model 双向绑定,拖拽完成后自动同步数组数据,无需手动编写排序、数据更新逻辑。

  6. 容器高度自定义 不受DOM结构限制,任意容器都可作为拖拽区域,相比原生Sortablejs,适配性更强、拓展性更高。


快速安装 & 极简上手

安装命令一键引入,接入成本极低:

npm install vue-draggable-plus

项目中优先使用组件式开发,几行代码就能实现跨列表互相拖拽:

<template>
  <!-- 拖拽容器1 -->
  <VueDraggable
    v-model="list1"
    animation="150"
    group="dragGroup"
    ghost
  >
    <div v-for="item in list1" :key="item.id">
      {{ item.name }}
    </div>
  </VueDraggable>

  <!-- 拖拽容器2,同组可跨栏拖动 -->
  <VueDraggable
    v-model="list2"
    animation="150"
    group="dragGroup"
  >
    <div v-for="item in list2" :key="item.id">
      {{ item.name }}
    </div>
  </VueDraggable>
</template>

<script setup>
import { ref } from 'vue'
import { VueDraggable } from 'vue-draggable-plus'

// 基础列表数据
const list1 = ref([
  { name: 'Joao', id: '1' },
  { name: 'Jean', id: '2' },
  { name: 'Johanna', id: '3' }
])
const list2 = ref([
  { name: 'Joao-2', id: '1-2' },
  { name: 'Jean-2', id: '2-2' }
])
</script>

只需简单配置分组、动画、占位样式,就能实现丝滑的拖拽排序、跨容器移动。同时内置 update、add、remove 等事件,可监听拖拽状态,拓展二次业务逻辑。


高阶场景

除了基础的列表拖拽,它还覆盖更多复杂业务:

  • 表格行、列自由拖拽排序
  • 多层级嵌套组件拖拽
  • 自定义拖拽手柄、禁用指定元素拖动
  • 自定义拖拽样式、悬浮占位效果

仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://web.fly63.com/nav/5154

更多»
热门资源
swiper
目前应用较广泛的移动端网页触摸内容滑动js插件
官网
GitHub
layer
layer是一款口碑极佳的web弹层组件
点击进入
GitHub
iScroll.js
IScroll是移动页面上被使用的一款仿系统滚动插件。
官网
GitHub
wangEditor
基于javascript和css开发的 Web富文本编辑器
官网
GitHub
ueditor
由百度web前端研发部开发所见即所得富文本web编辑器
官网
GitHub
highlight
Highlight.js 是一个用 JavaScript 写的代码高亮插件,在客户端和服务端都能工作。
官网
GitHub
UglifyJS
一个js 解释器、最小化器、压缩器、美化器工具集
官网
GitHub
lozad.js
高性能,轻量级,可配置的懒加载图片工具
官网
GitHub
Sortable.js
简单灵活的 JavaScript 拖放排序插件
官网
GitHub
validate.js
表单提供了强大的验证功能,让客户端表单验证变得更简单
官网
GitHub
Draggin.js
一款兼容移动手机的js拖拽插件
官网
GitHub
lazysizes.js
响应式图像延迟加载JS插件【懒加载】
官网
GitHub
类似于VueDraggablePlus的资源
watermark.js
在项目中添加水印效果
官网
GitHub
You-Dont-Need-Momentjs
可用于替换moment.js + ESLint插件的date-fns 或原生函数列表
点击进入
GitHub
proposal-bigint
JavaScript中的任意精度整数
官网
GitHub
Micromodal.js
使用纯Js编写轻量级,可配置的模式对话框库
官网
GitHub
list.js
给现有的表格、列表以及各种 HTML 元素提供添加、搜索、排序功能的库
官网
GitHub
vue-core-image-upload
图片剪切和上传的 vue 插件
官网
GitHub
jwplayer
优秀的网页媒体播放器
官网
GitHub
Rythm.js
一款让页面元素跳动起来的插件
官网
GitHub
目录

手机扫一扫预览

首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架

Copyright © 2018 Web前端开发网 All Rights Reserved. 分享编程学习资源(教程/框架/库)、在线工具、技术教程、内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。