מדריכים · 07

מגיעים מ־React Native

מה נשאר אותו דבר, מה משתנה ומה האינטרנט מוסיף.

אותן קריאות

בקרים, גרפים והגדרות עוקבים אחרי Animated של React Native. רנדרו מארחי DOM כמו Animated.div במקום שבו React Native מרנדר Animated.View. useAnimatedValue זמין כמו ב־React Native.

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

הבדלים שכדאי להכיר

הפרטים האלה גורמים לקוד שהועבר להתנהג כמו שהתנהג במכשיר.

  • useNativeDriver ו־isInteraction מתקבלים. הניגון נבחר במקום זאת לכל פלט: פלטים מתאימים מתנגנים בדפדפן, והשאר ב־JavaScript.
  • spring מקבל stiffness/damping/mass, bounciness/speed או tension/friction, עם ברירת המחדל של React Native כשלא ניתן אף אחד.
  • interpolate תומך ב־easing ובשלושת מצבי האקסטרפולציה.
  • Easing תואם ל־React Native, כולל elastic. Easing.exp עבר שינוי קנה מידה של 0.1% כדי להתחיל בדיוק ב־0, כך שיוכל להשתמש בניגון בדפדפן.
  • מהירות decay ביחידות למילישנייה ומהירות קפיץ ביחידות לשנייה, כמו ב־React Native.
  • Animated.createAnimatedComponent עוטף רכיב שמעביר ref.
Spinner.jsx
// React Native
<Animated.View style={{ transform: [{ rotate }] }} />

// React DOM with @kkwaenggwari/animated — the rest is identical
<Animated.div style={{ transform: [{ rotate }] }} />

const spin = useAnimatedValue(0);
const rotate = spin.interpolate({ inputRange: [0, 1], outputRange: ['0deg', '360deg'] });

Animated.loop(
  Animated.timing(spin, { toValue: 1, duration: 900, easing: Easing.linear, useNativeDriver: true }),
).start();

מה האינטרנט מוסיף

style רגיל של React מקבל ערכי hooks ישירות, seed/pose/respond מתארים יעדים ומחוות, ו־Animated.Keep ו־Animated.Scene מטפלים ביציאות ובפריסה.

חיפוש

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