Alert
重要な情報を表示するアラートコンポーネント。
インポート
個別サブパス(バンドルサイズを抑えたい場合):
基本的な使い方
Loading...
バリアント
Loading...
アイコン付きアラート
Loading...
閉じるボタン
onClose を渡すと右上に閉じるボタン(ghostのXアイコン)が表示されます。開閉状態の管理は利用側で行います(onClose が呼ばれたら親の state を更新して非表示にする、など)。
Loading...
onClose を渡す場合は利用側がClient Componentである必要があります(RSCからは関数を渡せないため)。
これはAlertに限らず、onClick等の関数propsを受け取る全コンポーネントに共通するReact自体の制約です。
表示のみの用途(onCloseを渡さない場合)は/serverからそのまま利用できます。
Props
| Prop | Type | Default | Description |
|---|---|---|---|
variant | 'default' | 'destructive' | 'success' | 'warning' | 'info' | 'default' | アラートのスタイルバリアント |
onClose | () => void | - | 閉じるボタンを表示し、クリック時に呼び出すハンドラ。省略時は閉じるボタンを表示しない |
アクセシビリティ(role)
variant="destructive" のときは role="alert"(即時に読み上げられる緊急度の高いロール)、それ以外の全variant(default/success/warning/info)は role="status"(穏やかに読み上げられるロール)を使用します。
AlertとSonnerの使い分け
| 用途 | 推奨 |
|---|---|
| 一時的な通知(保存完了など) | Sonner |
| ページ内に残すエラー表示 | Alert |
| フォームのバリデーションエラー | Alert |
| 重要な注意事項 | Alert |