Skip to content

SunlightDrawer

基于 Element Plus Drawer 封装的增强版抽屉组件,支持自定义宽度、灵活的底部按钮配置、内容区域滚动等功能。

组件特性

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

基本使用

基础抽屉

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

配置说明

参数说明类型默认值
v-model:visible抽屉显示状态booleanfalse
drawerTitle抽屉标题string'抽屉'
drawerDirection抽屉方向'rtl' | 'ltr' | 'ttb' | 'btt''rtl'
drawerSize抽屉大小string | number'30%'
contentHeight内容区域高度number | string'calc(100vh - 150px)'
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底部按钮上方的插槽-

方法说明

方法名说明参数
showDrawer显示抽屉-
hideDrawer隐藏抽屉-
handleConfirmClick触发确认事件-
handleCancelClick触发取消事件-
handleFullscreenToggle切换全屏状态-