כל הרכיבים
MotionSwipe
שורה עם פעולות שנחשפות בהחלקה והסרה אופציונלית בהחלקה.
אינטרנטReact Nativeמחוות
נסו את זה
השימוש הקצר ביותר
Row.jsx<MotionSwipe
endActions={<button onClick={() => archive(id)}>Archive</button>}
dismiss="end"
onDismiss={() => remove(id)}
>
<MessagePreview />
</MotionSwipe>;
מה הוא עושה בשבילכם
- השורה עוקבת אחרי גרירות אופקיות, מתנגדת מעבר לפעולות שלה ומתייצבת לפי מהירות השחרור.
- עם
dismiss, החלקה ארוכה או זריקה מחליקה את השורה החוצה, מקפלת את הגובה שלה ואז קוראת ל־onDismiss(side). - הגלילה האנכית ממשיכה לעבוד, ורק שורה אחת נשארת פתוחה.
- הקשה על שורה פתוחה סוגרת אותה, ופוקוס מקלדת על פעולה חושף אותה.
מתאים ל־
- העברה לארכיון או מחיקה בתיבת הדואר.
- הצמדת שיחה.
- הסרת פריט מרשימה.
Props
| Prop | טיפוס | ברירת מחדל | תיאור |
|---|
children | ReactNode | | תוכן השורה. |
|---|
startActions | ReactNode | | נחשפות בתחילת השורה כשגוררים אותה לכיוון הסוף. |
|---|
endActions | ReactNode | | נחשפות בסוף השורה כשגוררים אותה לכיוון ההתחלה. |
|---|
dismiss | 'start' | 'end' | 'both' | | צדדים שבהם החלקה ארוכה או זריקה מסירה את השורה. |
|---|
onDismiss | (side) => void | | רץ אחרי שהשורה החליקה החוצה והתקפלה; הסירו כאן את הפריט מהנתונים שלכם. |
|---|
onOpenChange | (side | null) => void | | רץ עם הצד הפתוח, או null כשהשורה נסגרת. |
|---|
disabled | boolean | false | מכבה את ההחלקה. |
|---|
contentClassName | string | | class לתוכן השורה; contentStyle מגדיר את הסגנון המוטבע שלו. |
|---|
transition | Transition | spring | עקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם. |
|---|
props אחרים עוברים לאלמנט המרונדר, כך ש־className, style ומטפלי אירועים עובדים כרגיל.