Todos os componentes

MotionSwipe

Uma linha com ações reveladas ao deslizar e descarte opcional ao deslizar.

WebReact NativeGestos

Experimente

Preparando o exemplo…

Uso mais curto

Row.jsx
<MotionSwipe
  endActions={<button onClick={() => archive(id)}>Archive</button>}
  dismiss="end"
  onDismiss={() => remove(id)}
>
  <MessagePreview />
</MotionSwipe>;

O que ele resolve para você

  • A linha segue arrastes horizontais, oferece resistência além das ações e se acomoda com a velocidade com que você solta.
  • Com dismiss, um deslize longo ou um arremesso tira a linha, recolhe a altura e então chama onDismiss(side).
  • A rolagem vertical continua funcionando, e só uma linha fica aberta.
  • Tocar em uma linha aberta a fecha, e o foco do teclado em uma ação a revela.

Use para

  • Arquivar ou apagar em uma caixa de entrada.
  • Fixar uma conversa.
  • Remover um item de uma lista.

Props

PropTipoPadrãoDescrição
childrenReactNodeO conteúdo da linha.
startActionsReactNodeAparecem no começo da linha quando ela é arrastada para o fim.
endActionsReactNodeAparecem no fim da linha quando ela é arrastada para o começo.
dismiss'start' | 'end' | 'both'Lados em que um deslize longo ou um arremesso remove a linha.
onDismiss(side) => voidRoda depois que a linha saiu e foi recolhida; remova o item dos seus dados aqui.
onOpenChange(side | null) => voidRoda com o lado aberto, ou null quando a linha fecha.
disabledbooleanfalseDesliga o deslize.
contentClassNamestringClasse do conteúdo da linha; contentStyle define o estilo inline.
transitionTransitionspringUma curva de tempo { duration, easing } ou uma mola { tempo: 'spring', spring }. As molas mantêm o embalo quando interrompidas.

As outras props vão para o elemento renderizado, então className, style e handlers de eventos funcionam normalmente.

Web e React Native

startActions aparecem ao arrastar para o fim da linha e endActions ao arrastar para o começo. Dê um fundo ao conteúdo da linha com contentClassName.

O React Native usa as mesmas props e os mesmos gestos.

Usado nestes exemplos

Pesquisar

Digite para pesquisar na documentação.