جرّبه
جارٍ تجهيز المثال…
أقصر استخدام
<MotionList as="ul" items={todos} renderItem={(todo) => <TodoRow todo={todo} />} />;ما يتولّاه عنك
- تدخل العناصر الجديدة بتتابع محدود بينما تبقى العناصر غير المتأثرة ثابتة.
- تخرج العناصر المحذوفة من التدفق وتتحرك خارجة في مكانها بينما ينزلق الباقي لسدّ الفراغ.
- تنزلق العناصر المعاد ترتيبها إلى مواضعها الجديدة.
- التحرّكات التي يقاطعها تغيير آخر تحتفظ بسرعتها.
- يحرّك
present={false}كل العناصر خارجة، ويعيدplayKeyتشغيل الدخول.
استخدمه لـ
- قائمة مهام.
- نتائج بحث مصفّاة.
- سلة تسوّق.
Props
| Prop | النوع | الافتراضي | الوصف |
|---|---|---|---|
items | readonly T[] | —إلزامي | مصفوفة بياناتك. |
getKey | (item) => string | number | item.id | تعيد مفتاحًا فريدًا ثابتًا لعنصر. افتراضيًا item.id، أو العنصر نفسه للنصوص والأرقام. |
renderItem | (item, index) => ReactNode | item.label | يرسم عنصرًا. |
as | element | 'div' | العنصر المراد عرضه. |
itemAs | element | 'li' | 'div' | العنصر لكل بند. |
itemClassName | string | صنف لعنصر كل بند؛ ويضبط itemStyle نمطه المضمّن. | |
effect | 'rise' | 'fade' | 'scale' | 'slide' | 'rise' | كيف تدخل العناصر وتخرج. |
distance | number | 16 | مسافة rise وslide بالبكسل. |
stagger | number | 40 | مللي ثوانٍ بين العناصر الداخلة. |
order | 'forward' | 'reverse' | 'forward' | اتجاه التتابع. |
present | boolean | true | يحرّك false كل العناصر خارجة مع الحفاظ على التخطيط؛ ويعيدها true. |
initial | boolean | true | شغّل الدخول حين تُركَّب القائمة. |
playKey | string | number | تغييره يعيد تشغيل الدخول. | |
transition | Transition | spring | الانتقال للعناصر الداخلة والخارجة. |
layoutTransition | Transition | spring | الانتقال للعناصر المنزلقة إلى مواضع جديدة. |
تذهب props الأخرى إلى العنصر المعروض، فتعمل className وstyle ومعالجات الأحداث كالمعتاد.
الويب وReact Native
يحصل كل عنصر على عنصر غلاف (li داخل ul أو ol، وإلا div؛ ويغيّره itemAs) منسّق عبر itemClassName.
يجب أن تكون المفاتيح فريدة. غلّف القائمة في MotionHeight لتحريك ارتفاعها الكلي أيضًا.
مستخدم في هذه الأمثلة
- إجابة المحادثةاقتراحات تنطوي، وإجابة تتدفق بإيقاع ثابت، وسطر حالة يتبدّل.
MotionStreamMotionListMotionSwapMotionHeight - ملخص الدفعتتدحرج الكميات ومجاميع الأسطر والإجمالي مع تغيّر السلة؛ ويدخل إشعار القسيمة ويخرج؛ والدفع يتطلب ضغطًا مطوّلًا مقصودًا.
MotionListMotionNumberMotionPresenceMotionHold - البريد الواردعلامات تبويب للتصفية بأعداد حية، وصفوف يمكن سحبها بعيدًا، وقائمة تسدّ الفراغ.
MotionHighlightMotionListMotionSwipeMotionNumber