Alla komponenter
MotionSwipe
En rad med åtgärder som visas vid svep och valfri bortsvepning.
WebbReact NativeGester
Prova
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
| Prop | Typ | Standard | Beskrivning |
|---|
children | ReactNode | | Radens innehåll. |
|---|
startActions | ReactNode | | Visas i radens början när raden dras mot slutet. |
|---|
endActions | ReactNode | | Visas 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) => void | | Körs efter att raden glidit ut och fällts ihop; ta bort objektet från din data här. |
|---|
onOpenChange | (side | null) => void | | Körs med den öppna sidan, eller null när raden stängs. |
|---|
disabled | boolean | false | Stänger av svepning. |
|---|
contentClassName | string | | Klass för radinnehållet; contentStyle sätter dess inline-style. |
|---|
transition | Transition | spring | En 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.
Används i de här exemplen