Ghiduri · 07

Veniți din React Native

Ce rămâne la fel, ce se schimbă și ce adaugă webul.

Aceleași apeluri

Controlerele, grafurile și configurațiile urmează Animated din React Native. Randați gazde DOM precum Animated.div acolo unde React Native randează Animated.View. useAnimatedValue este disponibil ca în React Native.

Se pregătește exemplul…

Diferențe de știut

Aceste detalii fac ca un cod adus să se comporte ca pe dispozitiv.

  • useNativeDriver și isInteraction sunt acceptate. În schimb, redarea se alege per ieșire: ieșirile eligibile se redau în browser, restul în JavaScript.
  • spring acceptă stiffness/damping/mass, bounciness/speed sau tension/friction, cu valoarea implicită din React Native dacă nu se dă niciunul.
  • interpolate suportă easing și cele trei moduri de extrapolare.
  • Easing corespunde celui din React Native, inclusiv elastic. Easing.exp este rescalat cu 0,1% ca să pornească exact de la 0 și să poată folosi redarea în browser.
  • Viteza decay este în unități pe milisecundă, iar viteza spring în unități pe secundă, ca în React Native.
  • Animated.createAnimatedComponent învelește o componentă care transmite ref-ul.
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();

Ce adaugă webul

style React obișnuit acceptă direct valori de hook, seed/pose/respond descriu destinații și gesturi, iar Animated.Keep și Animated.Scene se ocupă de plecări și layout.

Căutare

Tastați pentru a căuta în documentație.