لوح جانبي

Drawer

لوح في React ينزلق من بداية السطر أو نهايته أو من الأسفل، للإعدادات، لوحات التفاصيل، ونماذج التصفية. يدير التركيز كما يديره Modal، وتراعي جوانبه الاتجاه من اليمين إلى اليسار.

ينزلق Drawer من حافة الشاشة بسلوك التركيز ومفتاح Escape نفسه في Modal. تعتمد الخاصية side على الاتجاه المنطقي، لذا تنعكس start وend مع اتجاه الصفحة.

متى تستخدمه

استخدم Drawer للتدفقات الثانوية التي تحتاج إلى مساحة أكبر من Modal: تحرير الإعدادات، أو عرض تفاصيل سجل، أو نموذج تصفية. استخدم اللوح السفلي في الجوال للمنتقيات القصيرة.

تتبادل القيمتان start وend موضعيهما في الاتجاه من اليمين إلى اليسار لأن الخاصية side منطقية. أبق الصفحة خلف اللوح ظاهرة ليحتفظ المستخدم بسياقه.

أمثلة

لوح الإعدادات

لوح سفلي

نموذج تصفية

الخصائص

الخصائص التي يعرفها Drawer. سمات العنصر الأصلي تمر كما هي.

<Drawer>

الخاصيةالنوعالافتراضيالوصف
childrenReactNode
openboolean
defaultOpenboolean
onOpenChange(open: boolean) => void
modalboolean

<DrawerTrigger>

الخاصيةالنوعالافتراضيالوصف
asChildboolean

<DrawerClose>

الخاصيةالنوعالافتراضيالوصف
asChildboolean

<DrawerContent>

الخاصيةالنوعالافتراضيالوصف
side"start" | "end" | "top" | "bottom"
size"sm" | "md" | "lg" | "full"
showCloseButtonbooleanShow the corner X close button. Defaults to true.
closeLabelstringLocalized aria-label for the close button. Defaults to "Close", or "إغلاق" when the DgaProvider locale is Arabic.
forceMounttrueUsed to force mounting when more control is needed. Useful when controlling animation with React animation libraries.
onOpenAutoFocus(event: Event) => voidEvent handler called when auto-focusing on open. Can be prevented.
onCloseAutoFocus(event: Event) => voidEvent handler called when auto-focusing on close. Can be prevented.
deferPointerDownOutsidebooleanWhen true, a 'pointerdown' event outside of the layered element will wait for the interaction's click event before dispatching, allowing third-party code to stop propagation of later events and cancel dismissal.
onEscapeKeyDown(event: KeyboardEvent) => voidEvent handler called when the escape key is down. Can be prevented.
onPointerDownOutside(event: PointerDownOutsideEvent) => voidEvent handler called when the a pointerdown event happens outside of the DismissableLayer. Can be prevented.
onFocusOutside(event: FocusOutsideEvent) => voidEvent handler called when the focus moves outside of the DismissableLayer. Can be prevented.
onInteractOutside(event: PointerDownOutsideEvent | FocusOutsideEvent) => voidEvent handler called when an interaction happens outside the DismissableLayer. Specifically, when a pointerdown event happens outside or focus moves outside of it. Can be prevented.
asChildboolean

<DrawerTitle>

الخاصيةالنوعالافتراضيالوصف
asChildboolean

<DrawerDescription>

الخاصيةالنوعالافتراضيالوصف
asChildboolean

إمكانية الوصول

يعتمد Drawer على أساس الحوار نفسه الذي يعتمد عليه Modal: يبقى التركيز محصوراً داخله، ويغلقه Escape، ثم يعود التركيز إلى المشغل. تمنح أجزاء العنوان والوصف اللوح اسمه المتاح.

لزر الإغلاق اسم متاح. ويتبع اللوح اتجاه الصفحة، مما يجعله ينزلق من الحافة المتوقعة.