Vodiči · 01

Prijelazi

Svaka komponenta prima jedan transition: krivulju timinga ili oprugu. Kako birati i što se događa kad se pokret prekine.

Dvije vrste prijelaza

Prijelaz je ili { duration, easing } ili { tempo: 'spring', spring }. Predajte ga u prop transition bilo koje komponente. Komponente koje pomiču više stvari odjednom primaju drugi prop, poput layoutTransition na MotionList za stavke koje klize na nove položaje.

transitions.js
// Timing: a duration and a curve.
{ duration: 300, easing: 'easeOut' }
{ duration: 600, easing: [0.22, 1, 0.36, 1] }

// Spring: physics that keeps its speed when interrupted.
{ tempo: 'spring', spring: { stiffness: 260, damping: 12 } }

// Spring with duration: calibrated to settle exactly then.
{ tempo: 'spring', spring: { stiffness: 260, damping: 12 }, duration: 500 }

Opruge s trajanjem

Opruga obično traje koliko joj fizika treba. Dodajte duration i opruga se kalibrira da se smiri točno tada, zadržavajući svoj karakter (koliko odskače) i uklapajući se u vaš timing. Usporedite krivulje timinga i opruge na iste tri komponente ispod.

Priprema primjera…

Prekidi

Svaka komponenta počinje novi pokret od onoga što je na zaslonu. Opruga zadržava i trenutačnu brzinu, pa drugi klik glatko okreće pokret. Krivulja timinga počinje ponovno od trenutačnog položaja s novom krivuljom.

  • Brojevi: nova vrijednost nastavlja od glifova na zaslonu.
  • Visina i zamjene: veličina nastavlja od veličine na zaslonu.
  • Popisi: stavke koje se premještaju na novi položaj zadržavaju brzinu.

Gotovi prijelazi

motionTokens skuplja nekoliko usklađenih osjećaja: četiri opruge, četiri krivulje timinga i četiri trajanja. To su obični objekti, pa raširite jedan da biste promijenili jedno polje.

tokens.js
import { motionTokens } from '@kkwaenggwari/animated-chorus';

motionTokens.spring.quick; // snappy UI feedback
motionTokens.spring.basic; // the default feel
motionTokens.spring.gentle; // panels and height
motionTokens.spring.bouncy; // playful numbers
motionTokens.easing.expoOut; // { duration: 420, easing: 'expoOut' }
motionTokens.duration.fast; // 140

Nazivi easinga

easing prima linear, in, out, inOut, ease, easeIn, easeOut, easeInOut, expoOut, backOut ili niz kubične Bézierove krivulje poput [0.22, 1, 0.36, 1].

Pretraži

Tipkajte za pretraživanje dokumentacije.