כל הרכיבים

MotionHeight

גובה שעוקב אחרי התוכן: קיפול, פתיחה ושינויי תוכן.

אינטרנטReact Nativeתוכן וגודל

נסו את זה

מכין את הדוגמה…

השימוש הקצר ביותר

Details.jsx
<button onClick={() => setOpen(!open)}>Details</button>
<MotionHeight open={open}>
  <Answer />
</MotionHeight>

מה הוא עושה בשבילכם

  • מונפש לגובה האמיתי של התוכן, שנמדד בשבילכם.
  • עוקב אחרי התוכן כשהוא גדל או קטן בזמן שהוא פתוח.
  • מתחיל מהגובה שעל המסך, גם באמצע שינוי.
  • שינוי גודל העמוד מתעדכן מיד במקום לפגר אחרי הרוחב החדש.
  • תוכן סגור נשאר מורכב אבל מוסתר ולא פעיל, כך שהמצב שלו נשמר.

מתאים ל־

  • תשובות ב־FAQ.
  • קבוצת הגדרות שנפתחת.
  • רשימה שהגובה הכולל שלה צריך לנוע (עטפו את MotionList).

Props

Propטיפוסברירת מחדלתיאור
openbooleantruefalse מקפל לגובה אפס; התוכן נשאר מורכב אבל מוסתר ולא פעיל.
childrenReactNodeהתוכן.
aselement'div'האלמנט לרינדור.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
onMotionComplete(open) => voidרץ עם open ברגע שהגובה התייצב.

props אחרים עוברים לאלמנט המרונדר, כך ש־className, style ומטפלי אירועים עובדים כרגיל.

אינטרנט ו־React Native

באינטרנט הגובה מתנגן ב־Web Animations API והתוכן שומר על הפריסה הרגילה שלו.

ב־React Native ה־view חותך את התוכן ומנפיש גובה על ה־driver של JS, כי גובה הוא פריסה.

בשימוש בדוגמאות האלה

חיפוש

הקלידו כדי לחפש בתיעוד.