Skip to main content

Lottie

Apresentação

O componente Lottie é responsável por exibir animações Lottie em sua aplicação. Ele utiliza a biblioteca @lottiefiles/react-lottie-player para renderizar animações vetoriais de forma eficiente e interativa.

Quando usar

  • Para exibir animações vetoriais
  • Para criar elementos de loading
  • Para adicionar ilustrações animadas
  • Para implementar micro-interações
  • Para criar animações de transição
  • Para exibir animações de sucesso/erro

Forma básica de uso

import { Lottie } from 'eitri-luminus';

// Animação básica
<Lottie
src="/animations/loading.json"
autoPlay
loop
/>

// Animação com tamanho personalizado
<Lottie
src="/animations/success.json"
width={200}
height={200}
speed={1.5}
/>

// Animação com estilo personalizado
<Lottie
src="/animations/error.json"
className="custom-animation"
style={{ backgroundColor: '#f0f0f0' }}
/>

// Animação sem loop
<Lottie
src="/animations/notification.json"
loop={false}
autoPlay={true}
/>

Propriedades

PropriedadeTipoDescrição
srcstringURL ou caminho do arquivo de animação Lottie
autoPlaybooleanDefine se a animação deve iniciar automaticamente (padrão: true)
loopbooleanDefine se a animação deve repetir (padrão: true)
speednumberVelocidade da animação (padrão: 1)
heightstring | numberAltura do container da animação
widthstring | numberLargura do container da animação
styleobjectEstilos inline para o container da animação
classNamestringClasses CSS adicionais para o container
idstringIdentificador único do componente

Heranças

O componente Lottie herda todas as propriedades comuns da biblioteca através da interface CommonProps, que inclui:

  • Propriedades de estilo (margin, padding, etc)
  • Propriedades de layout (flex, grid, etc)
  • Propriedades de posicionamento
  • Propriedades de acessibilidade
  • Propriedades de identificação (id, data-e)

Observações

  • O componente utiliza a biblioteca @lottiefiles/react-lottie-player
  • Suporta arquivos de animação no formato JSON
  • É possível controlar a reprodução através das props
  • O componente é responsivo por padrão
  • Recomenda-se usar para animações vetoriais leves
  • Ideal para micro-interações e feedback visual
  • Pode ser combinado com outros componentes para criar interfaces mais ricas
  • Suporta personalização através de classes CSS e estilos inline