3 maneiras de criar animações no React
As animações são uma parte importante da experiência do usuário e podem ser facilmente adicionadas a aplicativos React.
React
20 jan 2023

As animações podem ser usadas para destacar ações importantes, guiar o usuário através de um fluxo de trabalho ou simplesmente tornar a interface mais atraente.
O React é uma biblioteca JavaScript altamente popular usada para criar aplicativos web e mobile, e também oferece uma série de recursos para criar animações complexas.
Conheça 3 maneiras de criar animações no React:
1 - Animate.css + React Transition Group
Animate.css é uma biblioteca de animação CSS popular que fornece uma série de classes CSS prontas para usar.
O React Transition Group é uma biblioteca que permite adicionar animações a componentes do React.
Juntos, eles podem ser usados para criar animações complexas com pouco esforço.
Exemplo:
import React from 'react';
import { CSSTransition } from 'react-transition-group';
import 'animate.css/animate.min.css';
const MyComponent = () => {
const [isVisible, setIsVisible] = useState(false);
return (
<div>
<button onClick={() => setIsVisible(!isVisible)}>Toggle</button>
<CSSTransition
in={isVisible}
timeout={300}
classNames="fade"
unmountOnExit
>
<div className="animated bounce">Hello World</div>
</CSSTransition>
</div>
);
};2 - React Motion
O React Motion é uma biblioteca de animação baseada em física similar ao React Spring, mas com uma abordagem ligeiramente diferente.
Ele é projetado para ser fácil de usar e possui uma série de componentes prontos.
Exemplo:
import { Motion, spring } from 'react-motion';
const MyComponent = () => {
const [isVisible, setIsVisible] = useState(false);
return (
<Motion defaultStyle={{ opacity: 0, y: -50 }} style={{ opacity: spring(isVisible ? 1 : 0), y: spring(isVisible ? 0 : -50) }}>
{style => (
<div style={style}>
<button onClick={() => setIsVisible(!isVisible)}>Toggle</button>
<div>Hello World</div>
</div>
)}
</Motion>
);
};3 - React Spring
O React Spring é uma biblioteca de animação que permite criar animações complexas baseadas em física.
Ele é altamente personalizável e pode ser usado para criar animações de movimento natural e fluídas.
Exemplo:
import { useSpring, animated } from 'react-spring';
const MyComponent = () => {
const [isVisible, setIsVisible] = useState(false);
const animationProps = useSpring({
opacity: isVisible ? 1 : 0,
transform: isVisible ? 'translate3d(0,0,0)' : 'translate3d(0,-50px,0)',
});
return (
<animated.div style={animationProps}>
<button onClick={() => setIsVisible(!isVisible)}>Toggle</button>
<div>Hello World</div>
</animated.div>
);
};Resumo
Essas são apenas algumas das maneiras de criar animações complexas com o React, e existem muitas outras bibliotecas e ferramentas disponíveis para ajudar a criar animações sofisticadas.
É importante levar em conta a necessidade do projeto, e escolher a ferramenta certa para atender a sua necessidade.