Alle komponenter

MotionSheet

En bottom sheet, top sheet eller sideskuff med stoppunkter, snert og overlevering av rulling.

WebReact NativeOverlegg

Prøv det

Forbereder eksempelet …

Korteste bruk

Filters.jsx
<MotionSheet open={open} onOpenChange={setOpen} detents={[0.45, 0.92]}>
  <FilterList />
</MotionSheet>;

Dette tar den seg av

  • 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

PropTypeStandardBeskrivelse
openbooleanfalseOm sheeten vises.
onOpenChange(open) => voidKjø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'.
detentnumberKontrollert indeks for stoppunkt.
defaultDetentnumber0Indeks for stoppunkt ved åpning uten detent.
onDetentChange(index) => voidKjører med indeksen for stoppunktet sheeten lander på.
side'bottom' | 'top' | 'start' | 'end''bottom'Kanten sheeten kommer fra.
modalbooleantrueLegger til en bakgrunn, holder fokus inni og gjør siden inert.
dismissiblebooleantrueDra forbi det minste stoppunktet, bakgrunnen og Escape lukker den.
backdropClassNamestringKlasse for bakgrunnen; backdropStyle setter inline-stilen.
transitionTransitionspringEn 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.

Brukt i disse eksemplene

Søk

Skriv for å søke i dokumentasjonen.