Toast

命令式 / 上下文反馈,不是声明式单例组件。须挂 ToastProvider;若用 message.info 等,还需 ToastBridge

  • SSR:仅客户端 createPortaldocument.body(见包内 meta/SSR.md
  • 默认右上角堆叠,duration 默认 3000ms;单次可覆盖

文档站 Demo 跟随 Rspress 明暗主题(亮色用 admin)。后台场景见 Admin Demo

基础用法

<ToastProvider duration={3000}>
  <ToastBridge />
  <App />
</ToastProvider>

// 钩子
const { toast } = useToast();
toast('保存成功', 'success');
toast('稍长一点', 'info', 5000);

// 命令式(需 ToastBridge)
message.success('已保存');

实时演示

须挂 ToastProvider;命令式 message.* 还须挂 ToastBridge。SSR 阶段不访问 document。

API

ToastProvider

属性 类型 默认值 说明
duration number 3000 默认自动关闭毫秒;0 表示不自动关
children ReactNode 子树

useToast().toast

(message, type?, duration?) => void

type: "info" | "success" | "warning" | "error"(默认 info

message

message.info|success|warning|error(msg, duration?) — 依赖 ToastBridge 已挂载。