Skip to content

SunlightDialog

基于 Element Plus Dialog 封装的增强版对话框组件,支持全屏切换、可拖拽、自定义高度、灵活的底部按钮配置等功能。

组件特性

  • ✨ 支持全屏切换功能
  • 🖱️ 支持拖拽功能
  • 📏 支持自定义内容高度
  • 🎨 灵活的底部按钮配置
  • 🔄 支持双向绑定显示/隐藏
  • 📌 支持自定义标题和底部插槽

基本使用

基础对话框

最简单的对话框使用方式,只需要提供标题和内容。

配置说明

参数说明类型默认值
v-model:visible对话框显示状态booleanfalse
dialogTitle对话框标题string'对话框'
contentHeight内容区域高度number | string400
withFooter是否显示底部按钮booleantrue
confirmBtnText确认按钮文本string'确认'
cancelBtnText取消按钮文本string'取消'

自定义表单组件

在对话框中集成复杂的表单组件,实现数据的录入和编辑功能。

配置说明

参数说明类型默认值
formOptions表单配置项Record<string, any>{}
rules表单验证规则Record<string, any[]>{}

自定义表单 Label

通过插槽自定义表单标签的样式、内容和布局。

配置说明

参数说明类型默认值
labelWidth标签宽度string | number'80px'
labelPosition标签位置'left' | 'right' | 'top''right'

自定义底部

通过插槽自定义对话框的底部按钮区域,支持多按钮布局和自定义样式。

配置说明

参数说明类型默认值
footerButtonAlign底部按钮对齐方式'left' | 'center' | 'right''right'

事件说明

事件名说明参数
update:visible对话框显示状态变化事件value: boolean
toggle-fullscreen全屏状态切换事件value: boolean
on-confirm确认按钮点击事件-
on-cancel取消按钮点击事件-

插槽说明

插槽名说明参数
default对话框内容区域-
header对话框头部区域headerScope
header-title对话框标题区域-
fullscreen-toggle全屏切换图标区域{ isFullscreenMode, handleFullscreenToggle }
footer对话框底部按钮区域{ handleConfirmClick, handleCancelClick }
footer-top底部按钮上方的插槽-

方法说明

方法名说明参数
showDialog显示对话框-
hideDialog隐藏对话框-
handleConfirmClick触发确认事件-
handleCancelClick触发取消事件-
handleFullscreenToggle切换全屏状态-