Skip to content

Dialog / Drawer / Confirm

居中弹窗 RdDialog、侧滑 RdDrawer、Promise 确认框 rdConfirm(打开动态挂载,关闭自动卸载)。 删除等不可逆操作前二次确认;点遮罩默认抖动不关闭。

Dialog 基础用法 ​

新建客户、居中确认/表单弹窗等模态流程。默认 maskClosable=false:点遮罩抖动且不关闭。

Attributes ​

属性名说明类型默认值
v-model:visible是否显示booleanfalse
title标题string''
description副标题 / 说明string''
width宽度;复杂表单可传 720pxstring | number'520px'
maskClosable点击遮罩是否关闭;false 时抖动不关闭booleanfalse
showClose是否显示关闭按钮booleantrue
alignCenter垂直居中;默认 false,距顶 10vhbooleanfalse
destroyOnClose关闭时销毁内容booleanfalse
(行为)默认可拖标题栏移动;右下角可缩放;关闭后复位——

Events ​

事件名说明类型
open / opened打开时 / 打开动画结束() => void
close / closed关闭时 / 关闭动画结束() => void

Slots ​

插槽名说明
default正文
header自定义标题区
footer底栏操作

Drawer 基础用法 ​

侧滑面板。默认 maskClosable=false(点外侧抖动不关);设为 true 时点外侧直接关闭、无抖动。 size / direction 等透传 el-drawer。

Drawer 变体与嵌套 ​

rd-drawer--form / rd-drawer--workspace 控制版式; 嵌套时下层加 rd-drawer--behind(左移缩放变暗),顶层加 rd-drawer--nested(更深阴影)。

Drawer 内嵌套 Dialog ​

抽屉内再开 RdDialog(append-to-body)。点击弹框内容不应触发抽屉 is-shaking;关弹框后点抽屉外侧仍按 maskClosable 关闭或抖动。

Attributes ​

属性名说明类型默认值
v-model:visible是否显示booleanfalse
variantform 窄抽屉带标题;workspace 宽工作区'form' | 'workspace''form'
title / description标题栏文案(withHeader 时)string''
maskClosable点外侧:true 直接关闭;false 抖动不关闭booleanfalse
showClose / withHeader关闭按钮 / 是否展示标题栏(默认 form 有、workspace 无)boolean—
nested多层嵌套标记booleanfalse
…其余透传 el-drawer(size / direction / destroy-on-close 等)—size 默认 form=400px、workspace=80%

Events ​

事件名说明类型
open / opened打开时 / 打开动画结束() => void
close / closed关闭时 / 关闭动画结束() => void

Slots ​

插槽名说明
default正文
footer底栏操作

Confirm 确认弹窗 ​

调用 rdConfirm.confirm() 或 useConfirm() 即可;打开时动态挂载,关闭后卸载,无需在根布局常驻组件。

rdConfirm.confirm / ConfirmOptions ​

属性名说明类型默认值
title标题string—
body说明文案string—
type语义色与图标'warning' | 'danger' | 'info''warning'
confirmText确认按钮文案string'确定'
cancelText取消按钮文案string'取消'

返回 Promise<boolean>(true = 用户确认)。

行为说明 ​

  • is-shaking:maskClosable=false 时点外侧触发抖动动画,不关闭
  • rd-drawer--form / --workspace:版式皮肤(窄表单 / 宽工作区)
  • rd-drawer--behind / --nested:多层栈时下层左移缩放变暗,顶层加深阴影
  • Confirm:rdConfirm.confirm() 命令式打开;应用需 app.use(@rd-element/ui) 或 setConfirmAppContext(app._context)
  • Drawer 栈:嵌套抽屉共享 useRdDrawerStack,点外侧作用于最上层
  • 抽屉内 Dialog:点在 Dialog / MessageBox 上不算抽屉外侧,不触发抖动