Alla komponenter

MotionSwipe

En rad med åtgärder som visas vid svep och valfri bortsvepning.

WebbReact NativeGester

Prova

Förbereder exemplet…

Kortaste användning

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

Det här sköter den åt dig

  • Raden följer horisontella dragningar, gör motstånd förbi sina åtgärder och landar med din släpphastighet.
  • Med dismiss skjuter ett långt svep eller ett kast ut raden, fäller ihop dess höjd och anropar sedan onDismiss(side).
  • Vertikal scrollning fungerar fortfarande, och bara en rad är öppen åt gången.
  • Ett tryck på en öppen rad stänger den, och tangentbordsfokus på en åtgärd visar den.

Använd den för

  • Arkivera eller radera i en inkorg.
  • Fäst en konversation.
  • Ta bort ett objekt från en lista.

Props

PropTypStandardBeskrivning
childrenReactNodeRadens innehåll.
startActionsReactNodeVisas i radens början när raden dras mot slutet.
endActionsReactNodeVisas i radens slut när raden dras mot början.
dismiss'start' | 'end' | 'both'Sidor där ett långt svep eller ett kast tar bort raden.
onDismiss(side) => voidKörs efter att raden glidit ut och fällts ihop; ta bort objektet från din data här.
onOpenChange(side | null) => voidKörs med den öppna sidan, eller null när raden stängs.
disabledbooleanfalseStänger av svepning.
contentClassNamestringKlass för radinnehållet; contentStyle sätter dess inline-style.
transitionTransitionspringEn timingkurva { duration, easing } eller en fjäder { tempo: 'spring', spring }. Fjädrar behåller sitt momentum när de avbryts.

Andra props går till det renderade elementet, så className, style och händelsehanterare fungerar som vanligt.

Webb och React Native

startActions visas när du drar mot radens slut, endActions när du drar mot början. Ge radinnehållet en bakgrund med contentClassName.

React Native använder samma props och gester.

Används i de här exemplen

Sök

Skriv för att söka i dokumentationen.