Todos los componentes

MotionSwipe

Una fila con acciones que se revelan al deslizar y descarte opcional al deslizar.

WebReact NativeGestos

Pruébalo

Preparando el ejemplo…

Uso mínimo

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

Lo que resuelve por ti

  • La fila sigue los arrastres horizontales, ofrece resistencia más allá de sus acciones y se asienta con la velocidad con la que sueltas.
  • Con dismiss, un deslizamiento largo o un lanzamiento saca la fila, pliega su altura y luego llama a onDismiss(side).
  • El scroll vertical sigue funcionando y solo puede quedar abierta una fila.
  • Un toque en una fila abierta la cierra, y el foco del teclado en una acción la revela.

Úsalo para

  • Archivar o borrar en una bandeja de entrada.
  • Fijar una conversación.
  • Quitar un elemento de una lista.

Props

PropTipoPor defectoDescripción
childrenReactNodeEl contenido de la fila.
startActionsReactNodeAparecen al principio de la línea cuando la fila se arrastra hacia el final.
endActionsReactNodeAparecen al final de la línea cuando la fila se arrastra hacia el principio.
dismiss'start' | 'end' | 'both'Lados en los que un deslizamiento largo o un lanzamiento elimina la fila.
onDismiss(side) => voidSe ejecuta después de que la fila haya salido y se haya plegado; quita aquí el elemento de tus datos.
onOpenChange(side | null) => voidSe ejecuta con el lado abierto, o con null cuando la fila se cierra.
disabledbooleanfalseDesactiva el deslizamiento.
contentClassNamestringClase para el contenido de la fila; contentStyle fija su estilo en línea.
transitionTransitionspringUna curva de tiempo { duration, easing } o un resorte { tempo: 'spring', spring }. Los resortes conservan su impulso cuando se interrumpen.

Las demás props van al elemento renderizado, así que className, style y los manejadores de eventos funcionan como siempre.

Web y React Native

startActions aparecen al arrastrar hacia el final de la línea y endActions al arrastrar hacia el principio. Dale fondo al contenido de la fila con contentClassName.

React Native usa las mismas props y los mismos gestos.

Se usa en estos ejemplos

Buscar

Escribe para buscar en la documentación.