Toast

轻提示:用 ToastProvider 承载 useToast,浮层堆叠、自动关闭、悬停暂停,兼容受控与非受控。

属性

属性类型默认值说明
ToastProvider.durationnumber4000Provider 默认自动关闭毫秒数,0 表示不自动关闭
ToastProvider.limitnumber4同时最多显示的条数
ToastProvider.positionToastPosition'top'视口停靠方向,支持六个方向,默认 top
ToastProvider.labelstring'Notifications'视口区域的无障碍名称
ToastProvider.onClose(id, reason) => void—任一提示关闭后的回调,reason 为 manual | timeout | limit
useToast().toast(options) => string—toast(options) 弹出一条提示,返回其 id
useToast().update(id, options) => void—update(id, options) 就地更新某条提示,如 loading 完成后改成 success
useToast().dismiss(id?: string) => void—dismiss(id) 手动关闭某条提示;不传 id 时关闭全部
useToast().promise(p, messages) => Promise—promise(p, { loading, success, error }) 跟踪一个 promise,自动切换 loading / success / error
optionsToastOptions—toast 选项:title / description / variant / duration / persistent / dismissible / action
options.descriptionReactNode—关闭后不显示描述,只保留一行标题,形如单行 Message
options.persistentbooleanfalse常驻:不自动关闭、不显示关闭按钮、不受 limit 挤出,只能由程序调用 dismiss 关闭
options.dismissiblebooleantrue是否显示关闭按钮,默认 true;persistent 时始终不显示
childrenReactNode—Provider 包裹应用内容