Skip to content

Toast

토스트 컴포넌트는 사용자에게 짧은 알림 메시지를 표시하는 오버레이입니다. window.alert를 대체합니다.

기본 사용법

tsx
import { useOverlay } from '@youngduck/yd-ui/Overlays'
import { Button } from '@youngduck/yd-ui'

function App() {
  const { toast } = useOverlay()

  return (
    <Button
      onClick={() =>
        toast({
          content: '저장되었습니다.',
        })
      }
    >
      토스트 열기
    </Button>
  )
}

Duration 커스텀

duration 옵션으로 토스트 표시 시간을 조절할 수 있습니다. 기본값은 2000ms입니다.

tsx
toast({
  content: '5초 동안 표시되는 토스트',
  duration: 5000,
})

API

toast 옵션

옵션타입기본값설명
contentReactNode-토스트 내용 (필수)
durationnumber2000표시 시간 (ms)

사전 조건

앱 최상단에 <OverlayProvider>가 감싸져 있어야 합니다.

tsx
import { OverlayProvider } from '@youngduck/yd-ui/Overlays'

function App() {
  return (
    <OverlayProvider>
      <MyApp />
    </OverlayProvider>
  )
}

디자인 토큰

토큰기본값설명
--toast-min-width280px최소 너비
--toast-max-width420px최대 너비
--toast-padding-x16px좌우 여백
--toast-padding-y12px상하 여백
--toast-border-width2px테두리 두께
--toast-border-radiusvar(--yds-border-radius)모서리 둥글기
--toast-gap8px토스트 간 간격
--color-toast-bgvar(--color-background-tertiary)배경색
--color-toast-textvar(--color-white)텍스트 색상
--color-toast-bordervar(--color-secondary-50)테두리 색상
--z-index-toast1400z-index