Skip to content

Drawer ​

简易介绍 ​

Drawer 抽屉组件,用于从页面边缘滑出的面板,常用于展示更多内容或操作。mengyue-components 进行了封装并进行了 vitest 测试。 可以使用 <MYDrawer></MYDrawer> 或者 <MYDrawer /> 来实现抽屉功能。

基本用法 ​

基础抽屉 ​

基础的抽屉组件,默认从右侧滑出。

代码演示
展开代码

不同方向 ​

使用 direction 属性设置抽屉的弹出方向。

代码演示
展开代码

自定义尺寸 ​

使用 size 属性设置抽屉的尺寸。

代码演示
展开代码

自定义背景色 ​

使用 backgroundColor 属性自定义抽屉的背景颜色。

代码演示
展开代码

隐藏头部和关闭按钮 ​

使用 with-header 和 show-close 属性控制头部和关闭按钮的显示。

代码演示
展开代码

带底部操作栏 ​

使用 footer 插槽添加底部操作栏。

代码演示
展开代码

API 参考 ​

Props ​

参数说明类型可选值默认值
modelValue是否显示抽屉boolean—false
title抽屉标题string—''
direction抽屉打开方向stringltr/rtl/ttb/bttrtl
size抽屉尺寸string | number—30%
with-header是否显示头部boolean—true
show-close是否显示关闭按钮boolean—true
background-color抽屉背景色string—''
close-on-click-modal是否可以通过点击遮罩层关闭抽屉boolean—true
close-on-press-escape是否可以通过按下 ESC 关闭抽屉boolean—true
lock-scroll是否在抽屉显示时将 body 滚动锁定boolean—true
before-close关闭前的回调函数function—undefined

事件 ​

事件名说明参数
update:modelValue抽屉显示状态变化时触发value: boolean
open抽屉打开时触发—
close抽屉关闭时触发—

插槽 ​

插槽名说明
default抽屉主体内容
title抽屉标题内容
footer抽屉底部内容

类型定义 ​

typescript
interface DrawerProps {
  modelValue?: boolean;
  title?: string;
  direction?: 'ltr' | 'rtl' | 'ttb' | 'btt';
  size?: string | number;
  withHeader?: boolean;
  showClose?: boolean;
  backgroundColor?: string;
  closeOnClickModal?: boolean;
  closeOnPressEscape?: boolean;
  lockScroll?: boolean;
  beforeClose?: (done: () => void) => void;
}

基于 MIT 协议