Todos os componentes
MotionPresence
Mantém o conteúdo montado enquanto ele entra e sai animado.
WebReact NativeConteúdo e tamanho
Experimente
Uso mais curto
Notice.jsx<MotionPresence present={visible} exit={{ opacity: 0, translateY: -12 }}>
Draft saved
</MotionPresence>;
O que ele resolve para você
- Mude
present em vez de desmontar; o conteúdo sai antes de ser removido. - Restaurar durante uma saída continua dos valores atuais.
- Conteúdo que aparece de novo entra a partir da pose
exit. - O primeiro render mostra em repouso, então conteúdo que já estava ali não pisca.
Use para
- Um aviso de rascunho salvo.
- Uma mensagem de cupom no checkout.
- Uma mensagem de erro embaixo de um campo.
Props
| Prop | Tipo | Padrão | Descrição |
|---|
present | boolean | —obrigatória | Mostra ou oculta o conteúdo. Mude isto em vez de desmontar. |
|---|
enter | Pose | { opacity: 1, translateY: 0 } | A pose em repouso. |
|---|
exit | Pose | { opacity: 0, translateY: -12 } | A pose com que o conteúdo sai e a partir da qual entra. |
|---|
as | element | 'div' | O elemento a renderizar. |
|---|
transition | Transition | spring | Uma curva de tempo { duration, easing } ou uma mola { tempo: 'spring', spring }. As molas mantêm o embalo quando interrompidas. |
|---|
onExitComplete | () => void | | Roda depois que o conteúdo saiu e foi removido. |
|---|
As outras props vão para o elemento renderizado, então className, style e handlers de eventos funcionam normalmente.