كل المكوّنات

MotionSheet

لوحة سفلية أو علوية أو درج جانبي مع نقاط توقف ونقرات سريعة وتسليم التمرير.

الويبReact Nativeالطبقات العلوية

جرّبه

جارٍ تجهيز المثال…

أقصر استخدام

Filters.jsx
<MotionSheet open={open} onOpenChange={setOpen} detents={[0.45, 0.92]}>
  <FilterList />
</MotionSheet>;

ما يتولّاه عنك

  • تتبع السحب، وتقاوم بعد أكبر نقطة توقف، وتستقر وفق سرعة إفلاتك؛ والنقرة السريعة تنقل نقطة توقف واحدة أو تغلقها.
  • يُسلَّم السحب باللمس إلى المحتوى القابل للتمرير: السحب إلى الأسفل يعيد المحتوى إلى أعلاه قبل أن تتحرك اللوحة.
  • نقاط توقف ككسور من الشاشة، أو بالبكسل، أو 'content' للحجم الطبيعي للمحتوى.
  • اللوحة الشرطية تُبقي التركيز داخلها، وتجعل الصفحة خاملة، وتُغلق بـ Escape أو بالخلفية.

استخدمه لـ

  • لوحة مرشّحات.
  • قائمة مشاركة.
  • درج تنقّل مع side="start".

Props

Propالنوعالافتراضيالوصف
openbooleanfalseهل اللوحة ظاهرة.
onOpenChange(open) => voidيعمل مع false حين تُغلق اللوحة بالسحب أو النقر أو Escape.
detents(number | 'content')[]['content']أحجام السكون: كسر من الشاشة، أو بالبكسل، أو 'content'.
detentnumberفهرس نقطة التوقف المتحكَّم به.
defaultDetentnumber0فهرس نقطة التوقف المستخدم عند الفتح من دون detent.
onDetentChange(index) => voidيعمل مع فهرس نقطة التوقف التي تستقر عليها اللوحة.
side'bottom' | 'top' | 'start' | 'end''bottom'الحافة التي تأتي منها اللوحة.
modalbooleantrueيضيف خلفية، ويُبقي التركيز داخلها، ويجعل الصفحة خاملة.
dismissiblebooleantrueالسحب بعد أصغر نقطة توقف والخلفية وEscape تغلقها.
backdropClassNamestringصنف الخلفية؛ ويضبط backdropStyle نمطها المضمّن.
transitionTransitionspringمنحنى توقيت { duration, easing } أو نابض { tempo: 'spring', spring }. تحتفظ النوابض بزخمها عند المقاطعة.

تذهب props الأخرى إلى العنصر المعروض، فتعمل className وstyle ومعالجات الأحداث كالمعتاد.

الويب وReact Native

على الويب اللوحة الشرطية dialog أصلي؛ واللوحة عمود flex تنسّقه عبر className.

في React Native تُعرض داخل Modal شفاف ويغلقها زر الرجوع. تحتفظ عناصر ScrollView الداخلية بإيماءاتها، فتُسحب اللوحة من مقبضها وترويستها والمناطق الثابتة الأخرى.

مستخدم في هذه الأمثلة

بحث

اكتب للبحث في التوثيق.