Drawer
Drawerは、画面の端から表示されるパネルのコンポーネントです。
<Drawer.Root>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
使い方
import { Drawer } from "@yamada-ui/react"
import { Drawer } from "@/components/ui"
import { Drawer } from "@workspaces/ui"
<Drawer.Root>
<Drawer.OpenTrigger />
<Drawer.Content>
<Drawer.Overlay />
<Drawer.CloseButton />
<Drawer.Header />
<Drawer.Body />
<Drawer.Footer />
<Drawer.CloseTrigger />
</Drawer.Content>
</Drawer.Root>
Drawer.OverlayとDrawer.CloseButtonは、省略することができます。サイズを変更する
<Wrap gap="md">
<For each={["xs", "sm", "md", "lg", "xl", "full"]}>
{(size) => (
<Drawer.Root key={size} size={size}>
<Drawer.OpenTrigger>
<Button>Open "{size}" Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
)}
</For>
</Wrap>
位置を変更する
表示位置を変更する場合は、placementに"block-start"や"inline-start"などを設定します。デフォルトでは、"inline-end"が設定されています。
<Wrap gap="md">
<For each={["block-start", "inline-start", "inline-end", "block-end"]}>
{(placement) => (
<Drawer.Root key={placement} placement={placement}>
<Drawer.OpenTrigger>
<Button>Open "{placement}" Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
)}
</For>
</Wrap>
所要時間を変更する
所要時間を変更する場合は、durationに数値(秒)を設定します。
<Drawer.Root duration={0.7}>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
マウント時にスクロールをブロックしない
デフォルトでは、パネルを開いた際に主要なコンテンツのスクロールをブロックしています。これは、アクセシビリティを確保するためです。もし、主要なコンテンツのスクロールをブロックしたくない場合は、blockScrollOnMountをfalseに設定します。
<Drawer.Root blockScrollOnMount={false}>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
閉じるボタンを無効にする
閉じるボタンを無効にする場合は、withCloseButtonをfalseに設定します。
<Drawer.Root withCloseButton={false}>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
オーバーレイを無効にする
パネルのオーバーレイを無効(非表示)にする場合は、withOverlayをfalseにします。
<Drawer.Root withOverlay={false}>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
ドラッグして閉じる
Drawerをドラッグで閉じたい場合は、closeOnDragをtrueに設定します。
<Drawer.Root closeOnDrag>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
ドラッグバーを非表示にする
ドラッグバーを非表示にする場合は、withDragBarをfalseに設定します。
<Drawer.Root closeOnDrag withDragBar={false}>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
閉じるボタンをカスタマイズする
<Drawer.Root>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Content>
<Drawer.CloseButton colorScheme="red" />
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
オーバーレイをカスタマイズする
<Drawer.Root>
<Drawer.OpenTrigger>
<Button>Open Drawer</Button>
</Drawer.OpenTrigger>
<Drawer.Overlay bg="blackAlpha.300" backdropFilter="blur(10px)" />
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Drawer.CloseTrigger>
<Button variant="ghost">とじる</Button>
</Drawer.CloseTrigger>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
制御する
表示・非表示を制御する場合は、openとonCloseを設定します。
const { open, onOpen, onClose } = useDisclosure()
return (
<>
<Button onClick={onOpen}>Open Drawer</Button>
<Drawer.Root open={open} onClose={onClose}>
<Drawer.Content>
<Drawer.Header>ドラゴンボール</Drawer.Header>
<Drawer.Body>
『ドラゴンボール』は、鳥山明による日本の漫画作品です。『週刊少年ジャンプ』(集英社)にて1984年51号から1995年25号まで連載された。世界中に散らばった七つの球をすべて集めると、どんな願いも一つだけ叶えられるという秘宝・ドラゴンボールと、主人公・孫悟空(そん・ごくう)を中心に展開する、「冒険」「夢」「バトル」「友情」などを描いた長編漫画。
</Drawer.Body>
<Drawer.Footer>
<Button variant="ghost" onClick={onClose}>
とじる
</Button>
<Button>Wikipedia</Button>
</Drawer.Footer>
</Drawer.Content>
</Drawer.Root>
</>
)
"use client"をファイルの上部に追加する必要があります。Props
アクセシビリティ
現在、v2の移行に伴い、このセクションは更新中です。