Portal
Portalは、現在のDOM階層の外側に要素をレンダリングするコンポーネントです。
元の世界
ナツキ・スバル
<>
<Text>元の世界</Text>
<Portal>
<Text>ナツキ・スバル</Text>
</Portal>
</>
使い方
import { Portal } from "@yamada-ui/react"
import { Portal } from "@/components/ui"
import { Portal } from "@workspaces/ui"
<Portal />
転送先を変更する
転送先を変更する場合は、containerRefに転送先のrefを設定します。デフォルトでは、document.bodyの終わりに転送します。
元の世界
ナツキ・スバル
エミリアたん
const containerRef = useRef<HTMLDivElement>(null)
return (
<VStack>
<Text>元の世界</Text>
<Portal containerRef={containerRef}>
<Text>ナツキ・スバル</Text>
</Portal>
<Box ref={containerRef} p="md" bg="bg.contrast" color="fg.contrast">
<Text>エミリアたん</Text>
</Box>
</VStack>
)
"use client"をファイルの上部に追加する必要があります。転送を無効にする
転送を無効にする場合は、disabledをtrueに設定します。
元の世界
ナツキ・スバル
<>
<Text>元の世界</Text>
<Portal disabled>
<Text>ナツキ・スバル</Text>
</Portal>
</>
Props
類似のコンポーネント
Slot
Slotは、propsを子要素にマージするコンポーネントです。
For
Forは配列をループして各アイテムに対してコンポーネントをレンダリングするために使用されるコンポーネントです。
Format
Formatは、日付・数値・バイトなどを特定のロケールに合わせてフォーマットするために使用されます。
Show
Showは、条件に基づいて子要素を表示または非表示にするコンポーネントです。
ClientOnly
ClientOnlyは、クライアントサイドでのみ子要素をレンダリングするコンポーネントです。
使用されているコンポーネント・フック
Drawer
Drawerは、画面の端から表示されるパネルのコンポーネントです。
Dropzone
Dropzoneは、ファイルをドラッグアンドドロップでアップロードするために使用されるコンポーネントです。
FileButton
FileButtonは、ユーザーがファイルを選択するために使用されるボタンのコンポーネントです。
FileInput
FileInputは、ユーザーがファイルを選択するために使用されるコンポーネントです。
Loading
Loadingは、データの読み込み中などの待機時間に表示するコンポーネントです。
Modal
Modalは、主要なコンテンツに重ねて表示され、ユーザーの注意を情報のみに集中させるコンポーネントです。
Popover
Popoverは、要素の周りにフローティングして情報を表示するコンポーネントです。
Toggle
Toggleは、オンまたはオフの2つの状態を持つコンポーネントです。
Tooltip
Tooltipは、要素の補足など短い情報を表示するコンポーネントです。