---
title: Snacks
description: "`Snacks`は、フォームなどで使用される通知を制御するコンポーネントです。"
links:
- source: https://github.com/yamada-ui/yamada-ui/tree/main/packages/react/src/components/snacks
- storybook: https://yamada-ui.github.io/yamada-ui?path=/story/components-snacks--basic
---
```tsx
const { snack, snacks } = useSnacks()
return (
)
```
## 使い方
```tsx
import { useSnacks, Snacks } from "@yamada-ui/react"
```
```tsx
import { useSnacks, Snacks } from "@/components/ui"
```
```tsx
import { useSnacks, Snacks } from "@workspaces/ui"
```
```tsx
```
### バリアントを変更する
```tsx
const { snack, snacks } = useSnacks()
return (
{(variant) => (
)}
)
```
### カラースキー厶を変更する
```tsx
const { snack, snacks } = useSnacks()
return (
{(colorScheme) => (
)}
)
```
### ステータスを変更する
ステータスを変更する場合は、`status`を設定します。
```tsx
const { snack, snacks } = useSnacks()
return (
{(status) => (
)}
)
```
### ローディングスキームを変更する
ローディングスキームを変更する場合は、`loadingScheme`を設定します。
```tsx
const { snack, snacks } = useSnacks()
return (
{(loadingScheme) => (
)}
)
```
### 方向を変更する
方向を変更する場合は、`direction`に`"start"`または`"end"`を設定します。デフォルトでは、`"start"`が設定されています。
```tsx
const { snack, snacks } = useSnacks({ direction: "end" })
return (
)
```
### 表示件数を制限する
表示件数を制限する場合は、`limit`に数値を設定します。もし、無制限に表示する場合は、`null`を設定します。デフォルトでは、`3`が設定されています。
```tsx
const { snack, snacks } = useSnacks({ limit: 5 })
return (
)
```
### 表示時間を設定する
表示時間を設定する場合は、`duration`に数値(ミリ秒)を設定します。
```tsx
const { snack, snacks } = useSnacks()
return (
)
```
### 閉じるボタンを無効にする
閉じるボタンを無効にする場合は、`closable`を`false`に設定します。
```tsx
const { snack, snacks } = useSnacks({ closable: false })
return (
)
```
### 通知を閉じる
通知を閉じる場合は、`snack.close`や`snack.closeAll`を使用します。
```tsx
const { snack, snacks } = useSnacks()
const id = useRef(undefined)
return (
)
```
### 通知を更新する
通知を更新する場合は、`snack.update`を使用します。
```tsx
const { snack, snacks } = useSnacks()
const id = useRef(undefined)
return (
)
```
### Props
| Prop | Default | Type | Description |
| ----------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| `as` | - | `DOMElement` | The HTML element to render. |
| `asChild` | - | `boolean` | Merges its props onto its immediate child. |
| `css` | - | `CSSObject \| CSSObject[]` | The CSS object. |
| `colorScheme` | - | `"amber" \| "black" \| "blackAlpha" \| "blue" \| "cyan" \| "danger" \| "emerald" \| "error" \| "flashy" \| "fuchsia" ...` | Set color scheme variables. |
| `snacks` | - | `UseSnacksReturn["snacks"]` | The snacks created by `useSnacks`. |
| `gap` | `"md"` | `"-0.5" \| "-1.5" \| "-1" \| "-10" \| "-11" \| "-12" \| "-13" \| "-14" \| "-15" \| "-16" ...` | The CSS `gap` property. |
| `gutter` | `[0, "lg"]` | `[CSSProps["paddingTop"], CSSProps["paddingBottom"]]` | A property that provides spacing between the top and bottom. |
| `listProps` | - | `HTMLMotionProps` | Props for the snacks list element. |
| `negativeMargins` | `true` | `boolean` | If `true`, apply gutter value to negative margins |