Skip to content

Draggable 可拖拽弹窗

一个可拖拽的弹窗组件,支持自定义位置、遮罩层、拖拽等功能。

基础用法

最基本的用法,弹窗会默认居中显示。

自定义位置

通过 xy 属性可以指定弹窗的初始位置。

自定义尺寸

可以设置弹窗的宽度和高度。

无遮罩层

设置 maskfalse 可以移除遮罩层。

点击遮罩关闭

设置 closeOnClickMasktrue 可以点击遮罩层关闭弹窗。

自定义头部

通过 #header 插槽可以自定义头部内容。

事件监听

组件支持 close 事件,可以在弹窗关闭时执行自定义逻辑。

API

Props

参数说明类型默认值
modelValue是否显示弹窗booleanfalse
title弹窗标题string''
width弹窗宽度number | string400
height弹窗高度number | string240
x初始 X 坐标,不传则居中显示numbernull
y初始 Y 坐标,不传则居中显示numbernull
mask是否显示遮罩层booleantrue
closeOnClickMask点击遮罩层是否关闭弹窗booleanfalse

Events

事件名说明回调参数
update:modelValue弹窗显示状态改变时触发(value: boolean)
close弹窗关闭时触发()

Slots

插槽名说明作用域参数
default弹窗主体内容()
header自定义头部内容()

特性

  • 🎯 智能定位:支持自定义位置或自动居中
  • 🖱️ 拖拽功能:通过头部区域拖拽移动弹窗
  • 🎨 自定义样式:支持自定义尺寸、遮罩层等
  • 📱 响应式:适配不同屏幕尺寸
  • 无障碍:支持键盘操作和屏幕阅读器

Released under the MIT License.