Renderize elementos comuns que vão até um destino, respondem a gestos e saem com elegância.
Animated.<tag>
Animated.div, Animated.button, Animated.svg e qualquer outra tag HTML ou SVG renderizam o elemento comum, sem wrapper. O style aceita valores, e transforms podem ser arrays como no React Native.
O movimento finito de transform e opacity nesses elementos, molas incluídas, pode rodar no navegador.
Preparando o exemplo…
seed, pose, poses e tempo
seed é o primeiro quadro, pose o destino atual (um objeto ou o nome de uma entrada de poses) e tempo um timing ou uma mola. Mudar só tempo não reproduz de novo um destino que não mudou.
respond mapeia gestos para destinos temporários: hover, focus, focusWithin, press, longPress, drag, inView e outros. Quando uma resposta termina, o elemento volta à sua pose de onde estiver.
onResponse informa cada borda, e respond={{ press: {} }} observa um gesto sem mudar nada visualmente.
Preparando o exemplo…
Compartilhe padrões com Animated.Scope
Animated.Scope passa um nome de pose, um tempo e padrões de animação para os elementos Animated dentro dele.
Animated.wrap(Component) — createAnimatedComponent no React Native — faz um componente que repassa a ref e se resolve em um único elemento DOM aceitar as mesmas props.