Útmutatók · 07

React Native felől érkezőknek

Mi marad ugyanaz, mi változik, és mit ad hozzá a web.

Ugyanazok a hívások

A vezérlők, gráfok és konfigurációk a React Native Animated modulját követik. Ahol a React Native Animated.View-t renderel, ott rendereljen olyan DOM-gazdát, mint az Animated.div. A useAnimatedValue ugyanúgy elérhető, mint React Native-ben.

A példa előkészítése…

Különbségek, amelyeket érdemes tudni

Ezek a részletek biztosítják, hogy az áthozott kód úgy viselkedjen, mint az eszközön.

  • A useNativeDriver és az isInteraction elfogadott. A lejátszást helyette kimenetenként választjuk: a megfelelő kimenetek a böngészőben, a többi JavaScriptben fut.
  • A spring fogadja a stiffness/damping/mass, a bounciness/speed vagy a tension/friction paramétereket, ezek hiányában a React Native alapértékét.
  • Az interpolate támogatja az easing-et és a három extrapolációs módot.
  • Az Easing megegyezik a React Native-belivel, az elastic-ot is beleértve. Az Easing.exp 0,1%-kal át van skálázva, hogy pontosan 0-ról induljon, és használhassa a böngészős lejátszást.
  • A decay sebessége egység per ezredmásodperc, a spring sebessége egység per másodperc, mint React Native-ben.
  • Az Animated.createAnimatedComponent egy ref-továbbító komponenst burkol.
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();

Amit a web hozzáad

A sima React style közvetlenül fogadja a hookértékeket, a seed/pose/respond célokat és gesztusokat ír le, az Animated.Keep és az Animated.Scene pedig a távozásokat és az elrendezést kezeli.

Keresés

Gépeljen a dokumentációban való kereséshez.