Skip to content

Springs e tweens ​

O terceiro argumento do animate() diz como chegar lá. Sem ele, transforms se movem com um spring e opacity faz ease em 300ms. Keyframes fazem tween.

Springs ​

ts
animate(card, { scale: 1.2 }, 'bouncy')
animate(card, { y: 0 }, { bounce: 0.3, duration: 600 })
animate(card, { y: 0 }, { stiffness: 300, damping: 20, mass: 1 })
SpringSensação
smoothsem overshoot
snappyrápido, mal passa do alvo. O padrão
bouncypassa do alvo e assenta com um quique

bounce vai de -1 a 1: 0 assenta sem passar do alvo, valores maiores quicam mais, valores negativos assentam mais devagar. duration é quanto tempo o spring parece durar, o mesmo modelo do SwiftUI. Ou descreva com stiffness, damping e mass. Um spring começa com a velocidade da animação que interrompe, a menos que você passe velocity (unidades por segundo).

Tweens ​

ts
animate(card, { opacity: 0 }, { duration: 200, ease: 'easeIn' })
animate(
  card,
  { x: [0, 100, 50] },
  { duration: 600, ease: ['easeOut', 'easeIn'], times: [0, 0.3, 1] },
)

Tweens duram 300ms com easeOut a menos que se diga o contrário. ease aceita linear, ease, easeIn, easeOut, easeInOut, circIn, circOut, circInOut, backIn, backOut, backInOut, anticipate, um cubic bezier ([0.2, 0, 0, 1]) ou qualquer função de 0..1 para um valor. Com keyframes, passe um por trecho. times posiciona cada keyframe entre 0 e 1.

Funções de easing customizadas rodam uma vez, quando a animação começa, como os springs. Não custam nada por frame.

Por propriedade ​

ts
animate(
  card,
  { y: 0, opacity: 1 },
  { type: 'spring', bounce: 0.3, opacity: { duration: 150 } },
)

A transição de uma propriedade substitui a curva, e mantém o tempo (delay, repeat) da principal a menos que defina o próprio.

Tempo ​

ts
animate(
  badge,
  { scale: [1, 1.2] },
  { delay: 300, repeat: Infinity, repeatType: 'reverse' },
)

delay é em milissegundos, e a view assume o primeiro keyframe durante ele. repeat é quantas vezes a mais tocar, Infinity até ser parada. repeatType: 'reverse' toca cada repetição alternada de trás para frente. As repetições também tocam nativamente.

Publicado sob a licença MIT.