Skip to content

useImperativeDialog

@astryxdesign/core v0.7.1 · useImperativeDialog

参数 ​

名称类型默认值说明
defaultOptionsImperativeDialogOptions{}每次 show() 都带上的默认配置,就是 Dialog 的属性去掉 isOpen。某次调用自己再传一份,会覆盖在这些之上。

返回值 ​

名称类型说明
show(content: () => VNodeChild, options?: ImperativeDialogOptions) => void按给定内容打开对话框。配置就是 Dialog 的属性去掉 isOpen 和内容。
hide() => void关掉对话框。
isOpenReadonly<Ref<boolean>>对话框当前是否打开。
HostComponent承载对话框的组件。在模板里渲染一次:<component :is="dialog.Host" />。

配置项 ​

名称类型默认值说明
widthnumber | string—期望宽度。数字按像素,字符串原样使用。全屏变体忽略它。
maxHeightnumber | string—最大高度。数字按像素,字符串原样使用。全屏变体忽略它。
positionDialogPosition居中固定位置。水平方向用 start 和 end,RTL 下自动镜像。
variant'standard' | 'fullscreen''standard'标准对话框由 width 和 maxHeight 定尺寸;全屏的占满视口。
purpose'info' | 'form' | 'required''info'用什么方式关。required 禁用 Escape 和遮罩;form 保留 Escape、禁用遮罩;info 两者都允许。
paddingDialogPadding主题默认值内边距档位,对应 --astryx-spacing-* 这些 token。