Όλα τα components
MotionSwap
Περιεχόμενο που εναλλάσσεται με διασταυρούμενο σβήσιμο ενώ το μέγεθος ακολουθεί.
WebReact NativeΠεριεχόμενο και μέγεθος
Δοκιμάστε το
Προετοιμασία παραδείγματος…
Η πιο σύντομη χρήση
SaveButton.jsx<button onClick={save}>
<MotionSwap value={status} effect="up">
{status === 'saving' ? 'Saving…' : status === 'saved' ? 'Saved' : 'Save'}
</MotionSwap>
</button>;
Τι αναλαμβάνει για εσάς
- Το στοιχείο αλλάζει από το μέγεθός του στην οθόνη στο φυσικό μέγεθος του νέου περιεχομένου, οπότε τα κουμπιά δεν πηδούν ποτέ.
- Το παλιό περιεχόμενο σβήνει εκεί που ήταν ενώ το νέο εμφανίζεται· κανένα δεν αναδιατάσσεται κατά την εναλλαγή.
- Η επιστροφή στη μέση μιας εναλλαγής συνεχίζει από ό,τι φαίνεται στην οθόνη αντί να στοιβάζει αντίγραφα.
- Τα παιδιά με απλό κείμενο είναι το δικό τους
value· για οτιδήποτε άλλο δώστε value.
Χρησιμοποιήστε το για
- Αποθήκευση, μετά Αποθήκευση…, μετά Αποθηκεύτηκε.
- Ένας σκελετός που γίνεται κάρτα προφίλ.
- Ένα κουμπί αναπαραγωγής που γίνεται παύση.
Props
| Prop | Τύπος | Προεπιλογή | Περιγραφή |
|---|
value | unknown | | Ταυτότητα του περιεχομένου· μια νέα τιμή προκαλεί εναλλαγή. Τα παιδιά με απλό κείμενο είναι η δική τους ταυτότητα. |
|---|
children | ReactNode | | Το περιεχόμενο. |
|---|
as | element | 'span' | Το στοιχείο προς απόδοση. |
|---|
inline | boolean | as === 'span' | Το true προσαρμόζει το μέγεθος στο περιεχόμενο (ετικέτες, εικονίδια)· το false γεμίζει το πλάτος του γονέα και κινεί το ύψος. |
|---|
align | 'start' | 'center' | 'end' | 'center' | Πού βρίσκεται το περιεχόμενο όσο αλλάζει το μέγεθος. |
|---|
effect | 'fade' | 'up' | 'down' | 'scale' | 'fade' | Πώς μπαίνει και βγαίνει το περιεχόμενο: το up ανεβαίνει, το down πέφτει, το scale μεγαλώνει. |
|---|
transition | Transition | spring | Μια καμπύλη timing { duration, easing } ή ένα ελατήριο { tempo: 'spring', spring }. Τα ελατήρια κρατούν την ορμή τους όταν διακόπτονται. |
|---|
onMotionComplete | (value) => void | | Εκτελείται όταν ηρεμήσει η κίνηση. |
|---|
Τα υπόλοιπα props πηγαίνουν στο στοιχείο που αποδίδεται, οπότε τα className, style και οι χειριστές συμβάντων λειτουργούν κανονικά.
Χρησιμοποιείται σε αυτά τα παραδείγματα