Kılavuzlar · 05

Giriş, ayrılış ve düzen

Ayrılan çocukları hareketleri bitene kadar tutun; konum ve boyut değişikliklerini, bileşenler arasında bile, canlandırın.

Animated.Keep

Animated.Keep key'li doğrudan çocukları depart pose'ları boyunca tutar. seed={false} ilk render'da var olan çocukların kendi pose'larında başlamasını sağlar, wait giren çocukları ayrılışlar bitene kadar geciktirir ve onDeparted sonuncudan sonra tetiklenir.

Örnek hazırlanıyor…

Animated.Scene ve move

Animated.Scene commit edilen düzeni ölçer. move içeren bir öğe konum ve boyut değişikliklerini canlandırır; move="pill" gibi bir dize, biri ayrılıp diğeri bağlansa bile Scene içinde aynı kimliğe sahip öğeleri birbirine bağlar.

Scene bu öğelerin düzen translate ve scale değerlerinin sahibidir; kendi transform'larınızı iç içe bir öğeye koyun.

Örnek hazırlanıyor…

Hook ile varlık

Bağlanmayı kendiniz denetlemeyi tercih ettiğinizde useAnimatedPresence(visible, { enter, exit }) { mounted, animatedValue } döndürür.

Toast.jsx
const { mounted, animatedValue } = useAnimatedPresence(open, {
  enter: (value) => spring(value, { toValue: 1 }),
  exit: (value) => timing(value, { toValue: 0, duration: 180 }),
});

return mounted ? <div style={{ opacity: animatedValue }}>Saved</div> : null;

React dışında

createLayoutScene aynı yakalama/commit koordinasyonunu herhangi bir render ediciye ya da elle yapılan DOM değişikliğine verir.

outside-react.js
const scene = createLayoutScene({ tempo: { spring: { stiffness: 320, damping: 30 } } });
const card = scene.attach(element, { key: 'card' });

scene.capture(); // before the DOM changes
list.prepend(element); // any renderer or manual DOM work
scene.commit(); // animates from the captured rectangles

Ara

Belgelerde aramak için yazın.