Toast
사용자에게 짧은 메시지를 표시하는 토스트 컴포넌트입니다.
Preview
기본 사용
타입별 토스트
Duration 설정
커스텀 아이콘
Usage
tsx
import { useToast, ToastProvider } from "@b1nd/dodam-design-system/components";// 앱 루트에 ToastProvider 추가function App() {return (<><ToastProvider />{/* ... */}</>);}// 컴포넌트에서 사용function MyComponent() {const toast = useToast();return (<button onClick={() => toast("메시지")}>토스트</button>);}// 위치 지정toast("상단 메시지", { position: "top" });// 타입별 토스트toast.success("성공 메시지");toast.error("에러 메시지");toast.warning("경고 메시지");// Duration 설정toast("5초 후 사라져요", { duration: 5000 });// 커스텀 아이콘import { LoudSpeaker } from "@b1nd/dodam-design-system/icons/illustration";toast("커스텀 아이콘", { icon: <LoudSpeaker size={20} /> });// 수동으로 닫기const id = toast("메시지");toast.hide(id);
Swipe to Dismiss
토스트를 드래그하여 빠르게 닫을 수 있습니다:
- 좌우 스와이프: 어느 방향이든 닫기
- 상단 토스트: 위로 스와이프하여 닫기
- 하단 토스트: 아래로 스와이프하여 닫기
API
toast(message, options?)
| Option | Type | Default | Description |
|---|---|---|---|
position | "top" | "bottom" | "bottom" | 토스트 위치 |
duration | number | 3000 | 표시 시간 (ms) |
icon | ReactNode | - | 커스텀 아이콘 |
toast.success / error / warning
타입별 토스트를 표시합니다. 자동으로 아이콘이 포함됩니다.
toast.hide(id)
토스트를 수동으로 닫습니다.