JGuang

轻提示

Toast · Ant Design Mobile

交互预览
npm install antd-mobile@5.43.0

轻提示 Toast

对操作结果的轻量级反馈,无需用户操作即可自行消失。

安装

npm install antd-mobile@5.43.0

antd-mobile 是移动网页组件库,不是 React Native 或小程序组件。React 19 项目需在入口用 unstableSetRender 注册 createRoot,否则 Toast、Dialog 等命令式 API 无法渲染;深色模式通过 <html data-prefers-color-scheme="dark"> 切换。

示例来自 Ant Design Mobile 官方仓库(MIT),固定在 npm 5.43.0 对应的提交;示例中的 DemoBlock 等展示辅助组件由 JGuang 重写,不属于 antd-mobile 的 API。

对操作结果的轻量级反馈,无需用户操作即可自行消失。

何时使用

适用于页面内容的变化不能直接反应操作结果时使用。

示例

Toast

指令式 API

Toast 只支持指令式调用。

Toast.show

show 方法支持传入一个 props 对象,它包含了以下这些属性:

属性说明类型默认值
afterCloseToast 完全关闭后的回调() => void-
contentToast 文本内容React.ReactNode-
duration提示持续时间,若为 0 则不会自动关闭number2000
getContainer自定义轻提示的父容器HTMLElement | (() => HTMLElement) | nulldocument.body
iconToast 图标'success' | 'fail' | 'loading' | React.ReactNode-
maskClassNameToast 遮罩类名string-
maskClickable是否允许背景点击booleantrue
maskStyleToast 遮罩样式React.CSSProperties-
position垂直方向显示位置'top' | 'bottom' | 'center''center'
stopPropagation阻止某些事件的冒泡PropagationEvent[]['click']

同一时间只允许弹出一个轻提示,新出现的 Toast 会将之前正在显示中的 Toast 挤掉。

你也可以直接传入一个字符串,Toast.show 会自动把它作为 content。

show 方法的返回值为一个组件控制器,包含以下属性:

属性说明类型默认值
close关闭当前 Toast() => void-

Toast.clear

关闭所有显示中的 Toast。

Toast.config

全局配置,支持配置 duration、position 和 maskClickable。配置方法如下:

Toast.config({ duration: 1000, position: 'top' })