Skip to content

Toast 轻提示

全局展示操作反馈的轻量级提示组件。通过 ToastProvider 包裹应用,使用 useToast hook 调用。

基础用法

tsx
import { ToastProvider, useToast } from '@airo-ui/react'

function App() {
  return (
    <ToastProvider>
      <MyComponent />
    </ToastProvider>
  )
}

function MyComponent() {
  const { showToast } = useToast()

  return (
    <button onClick={() => showToast('操作成功')}>
      显示提示
    </button>
  )
}

不同类型

tsx
import { useToast } from '@airo-ui/react'

function Demo() {
  const { showToast } = useToast()

  return (
    <>
      <button onClick={() => showToast('操作成功', 'success')}>成功</button>
      <button onClick={() => showToast('操作失败', 'error')}>错误</button>
      <button onClick={() => showToast('请注意', 'warning')}>警告</button>
      <button onClick={() => showToast('提示信息', 'info')}>信息</button>
    </>
  )
}

自定义时长

tsx
import { useToast } from '@airo-ui/react'

function Demo() {
  const { showToast } = useToast()

  return (
    <>
      <button onClick={() => showToast('2秒后消失', 'info', 2000)}>
        2秒关闭
      </button>
      <button onClick={() => showToast('持续显示', 'info', 0)}>
        不自动关闭
      </button>
    </>
  )
}

API

ToastProvider

名称说明
ToastProvider包裹应用的 Provider 组件,必须在根组件中使用

useToast

tsx
const { showToast } = useToast()

// 调用签名
showToast(message: string, type?: ToastType, duration?: number): void
参数类型默认值说明
messagestring提示内容
type'success' | 'error' | 'warning' | 'info''info'提示类型
durationnumber3000自动关闭延迟(毫秒),设为 0 则不自动关闭

MIT License