Kaikki komponentit

MotionSheet

Alasheet, yläsheet tai sivulaatikko pysähdyskohdilla, näpäytyksillä ja vierityksen luovutuksella.

WebReact NativePeitot

Kokeile

Valmistellaan esimerkkiä…

Lyhin käyttö

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

Mitä se hoitaa puolestasi

  • Seuraa vetoja, vastustaa suurimman pysähdyskohdan yli ja asettuu irrotusnopeutesi mukaan; näpäytys siirtää sitä yhden pysähdyskohdan tai sulkee sen.
  • Kosketusvedot luovutetaan vieritettävälle sisällölle: alas vetäminen vierittää sisällön ensin takaisin ylös ennen kuin sheet liikkuu.
  • Pysähdyskohdat näytön osuuksina, pikseleinä tai 'content'-arvona sisällön luonnolliselle koolle.
  • Modaalinen sheet pitää kohdistuksen sisällään, tekee sivusta passiivisen ja sulkeutuu Escillä tai taustasta.

Käytä sitä

  • Suodatinpaneeli.
  • Jakovalikko.
  • Navigointilaatikko side="start"-asetuksella.

Props

PropTyyppiOletusKuvaus
openbooleanfalseNäytetäänkö sheet.
onOpenChange(open) => voidSuoritetaan false-arvolla, kun sheet suljetaan vetämällä, napauttamalla tai Escillä.
detents(number | 'content')[]['content']Lepokoot: näytön osuus, pikselit tai 'content'.
detentnumberOhjattu pysähdyskohdan indeksi.
defaultDetentnumber0Pysähdyskohdan indeksi, jota käytetään avattaessa ilman detent-arvoa.
onDetentChange(index) => voidSuoritetaan sen pysähdyskohdan indeksillä, johon sheet asettuu.
side'bottom' | 'top' | 'start' | 'end''bottom'Reuna, jolta sheet tulee.
modalbooleantrueLisää taustan, pitää kohdistuksen sisällä ja tekee sivusta passiivisen.
dismissiblebooleantrueVetäminen pienimmän pysähdyskohdan ohi, tausta ja Esc sulkevat sen.
backdropClassNamestringLuokka taustalle; backdropStyle asettaa sen inline-tyylin.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.

Muut props-arvot menevät renderöidylle elementille, joten className, style ja tapahtumankäsittelijät toimivat tavalliseen tapaan.

Web ja React Native

Webissä modaalinen sheet on natiivi dialog; paneeli on flex-sarake, jota muotoilet className-arvolla.

React Nativessa se renderöidään läpinäkyvään Modal-elementtiin, ja takaisin-painike sulkee sen. Sisemmät ScrollView-elementit säilyttävät omat eleensä, joten sheetiä vedetään kahvasta, otsakkeesta ja muista staattisista alueista.

Käytetty näissä esimerkeissä

Haku

Kirjoita hakeaksesi dokumentaatiosta.