Skip to content

BizDragSort 拖拽排序列表 ​

通用拖拽排序容器(原生 HTML5 DnD,零第三方依赖):v-model 数组拖拽换位自动回写,支持把手拖拽、放置指示线、纵向 / 横向两种布局。行内视觉完全交给 item 作用域插槽,排序能力可与任意内容组合。

基础用法 ​

⋮⋮待办事项12 个内容
⋮⋮快捷入口8 个内容
⋮⋮数据看板6 个内容
⋮⋮公告栏3 个内容
⋮⋮常用文档5 个内容
按住 ⋮⋮ 把手拖动调整栏目顺序(行内其他区域不触发拖拽,方便放按钮 / 链接)
handle-class 约束仅把手区域可发起拖拽——行内放按钮 / 链接 / 输入框互不干扰;item-key 稳定 key 避免拖动时组件状态错位。

横向排序 · 禁用 · 事件 ​

1. 录入
2. 审核
3. 风控
4. 放款
流程步骤排序:拖动胶囊调整环节先后
direction="horizontal" 渲染横排(步骤条 / 标签排序);sorted 事件携带 { list, from, to },可直接提交后端保存顺序。

菜单管理排序 ​

⋮⋮工作台/dashboard
⋮⋮用户管理/users
⋮⋮订单中心/orders
⋮⋮商品管理/goods
⋮⋮系统设置/settings
拖拽与上移/下移按钮双通道(键盘可达);sorted 事件即时保存后端。

问卷题目排序 ​

⋮⋮Q1
必答
⋮⋮Q2
⋮⋮Q3
必答
卡片内含输入控件:handle-class 把手约束避免输入时误拖。

轮播图排序 ​

首页轮播顺序:618 大促 → 新品首发 → 会员日 → 直播预告 → 限时秒杀
direction=horizontal 横向胶囊,实时预览首页轮播顺序。

候选人列表(拖拽 + CRUD) ​

张张三88 分
李李四92 分
王王五85 分
赵赵六90 分
整行可拖 + 删除 / 追加联动,v-model 单一数据源驱动全部操作。

Props ​

属性名类型默认值说明
model-value / v-modelT[][]排序列表(泛型,拖拽完成后回写新序列)
item-keystring | ((item, index) => string | number)下标行 key 取值(推荐传唯一字段)
handle-classstring—拖拽把手 class:仅命中元素内可发起拖拽,缺省整行可拖
disabledbooleanfalse禁用拖拽(只读浏览态)
direction'vertical' | 'horizontal''vertical'布局方向
empty-textstring'暂无内容'空列表占位文案,空串不渲染

Events ​

事件名参数说明
update:model-value(list: T[])排序结果回写
sorted(payload: { list, from, to })一次拖拽完成(from/to 为起止下标)
drag-start(index: number)行开始被拖拽

Slots ​

插槽名说明
item行内容(作用域:item、index),视觉完全自定义

Expose ​

属性/方法说明
—无