Følger drag, gjør motstand forbi det største stoppunktet og lander med slipphastigheten din; et snert flytter ett stoppunkt eller lukker.
Berøringsdrag overleveres til rullbart innhold: å dra nedover ruller innholdet tilbake til toppen før sheeten beveger seg.
Stoppunkter som brøkdeler av skjermen, piksler eller 'content' for innholdets naturlige størrelse.
En modal sheet holder fokus inni, gjør siden inert og lukkes med Escape eller bakgrunnen.
Bruk den til
Et filterpanel.
En delingsmeny.
En navigasjonsskuff med side="start".
Props
Prop
Type
Standard
Beskrivelse
open
boolean
false
Om sheeten vises.
onOpenChange
(open) => void
Kjører med false når sheeten dras, trykkes eller lukkes med Escape.
detents
(number | 'content')[]
['content']
Hvilestørrelser: en brøkdel av skjermen, piksler eller 'content'.
detent
number
Kontrollert indeks for stoppunkt.
defaultDetent
number
0
Indeks for stoppunkt ved åpning uten detent.
onDetentChange
(index) => void
Kjører med indeksen for stoppunktet sheeten lander på.
side
'bottom' | 'top' | 'start' | 'end'
'bottom'
Kanten sheeten kommer fra.
modal
boolean
true
Legger til en bakgrunn, holder fokus inni og gjør siden inert.
dismissible
boolean
true
Dra forbi det minste stoppunktet, bakgrunnen og Escape lukker den.
backdropClassName
string
Klasse for bakgrunnen; backdropStyle setter inline-stilen.
transition
Transition
spring
En timingkurve { duration, easing } eller en fjær { tempo: 'spring', spring }. Fjærer beholder momentet når de avbrytes.
Andre props går til det renderte elementet, så className, style og hendelseshåndterere fungerer som vanlig.
Web og React Native
På nettet er en modal sheet en native dialog; panelet er en flex-kolonne som du stiler med className.
I React Native renderes den i en gjennomsiktig Modal, og tilbakeknappen lukker den. Indre ScrollView-er beholder egne bevegelser, så sheeten dras i håndtaket, toppteksten og andre faste områder.