FocusLock
FocusLockは、モーダルやダイアログなどの要素でフォーカスを制限し、フォーカスをその範囲内にロックすることで、アクセシビリティを向上させるコンポーネントです。
const { open, onToggle } = useDisclosure()
return (
<VStack align="flex-start" gap="0">
<Button onClick={onToggle}>Please Click</Button>
<Collapse open={open}>
<FocusLock>
<VStack mt="lg" bg="bg.panel" p="lg" rounded="l2">
<Input placeholder="This is Input" bg="bg" />
<Button alignSelf="flex-end">Button</Button>
</VStack>
</FocusLock>
</Collapse>
</VStack>
)
こちらのコードを使用する場合は、
"use client"をファイルの上部に追加する必要があります。使い方
import { FocusLock } from "@yamada-ui/react"
import { FocusLock } from "@/components/ui"
import { FocusLock } from "@workspaces/ui"
<FocusLock />