Δοκιμάστε το
Προετοιμασία παραδείγματος…
Η πιο σύντομη χρήση
<MotionList as="ul" items={todos} renderItem={(todo) => <TodoRow todo={todo} />} />;Τι αναλαμβάνει για εσάς
- Τα νέα στοιχεία μπαίνουν με περιορισμένη κλιμάκωση ενώ τα ανέγγιχτα μένουν ακίνητα.
- Τα στοιχεία που αφαιρούνται βγαίνουν από τη ροή και κινούνται προς τα έξω εκεί που ήταν, ενώ τα υπόλοιπα γλιστρούν στο κενό.
- Τα στοιχεία που αναδιατάσσονται γλιστρούν στις νέες θέσεις τους.
- Οι κινήσεις που διακόπτονται από άλλη αλλαγή κρατούν την ταχύτητά τους.
- Το
present={false}κινεί κάθε στοιχείο προς τα έξω και τοplayKeyαναπαράγει ξανά την είσοδο.
Χρησιμοποιήστε το για
- Μια λίστα εκκρεμοτήτων.
- Φιλτραρισμένα αποτελέσματα αναζήτησης.
- Ένα καλάθι αγορών.
Props
| Prop | Τύπος | Προεπιλογή | Περιγραφή |
|---|---|---|---|
items | readonly T[] | —υποχρεωτικό | Ο πίνακας δεδομένων σας. |
getKey | (item) => string | number | item.id | Επιστρέφει μοναδικό, σταθερό key για ένα στοιχείο. Από προεπιλογή item.id, ή το ίδιο το στοιχείο για συμβολοσειρές και αριθμούς. |
renderItem | (item, index) => ReactNode | item.label | Σχεδιάζει ένα στοιχείο. |
as | element | 'div' | Το στοιχείο προς απόδοση. |
itemAs | element | 'li' | 'div' | Το στοιχείο για κάθε στοιχείο λίστας. |
itemClassName | string | Κλάση για κάθε στοιχείο λίστας· το itemStyle ορίζει το inline στυλ του. | |
effect | 'rise' | 'fade' | 'scale' | 'slide' | 'rise' | Πώς μπαίνουν και βγαίνουν τα στοιχεία. |
distance | number | 16 | Διαδρομή των rise και slide σε pixels. |
stagger | number | 40 | Χιλιοστά του δευτερολέπτου ανάμεσα στα στοιχεία που μπαίνουν. |
order | 'forward' | 'reverse' | 'forward' | Κατεύθυνση της κλιμάκωσης. |
present | boolean | true | Το false κινεί κάθε στοιχείο προς τα έξω κρατώντας τη διάταξη· το true τα επαναφέρει. |
initial | boolean | true | Αναπαραγωγή της εισόδου όταν προσαρτάται η λίστα. |
playKey | string | number | Η αλλαγή του αναπαράγει ξανά την είσοδο. | |
transition | Transition | spring | Μετάβαση για στοιχεία που μπαίνουν και βγαίνουν. |
layoutTransition | Transition | spring | Μετάβαση για στοιχεία που γλιστρούν σε νέες θέσεις. |
Τα υπόλοιπα props πηγαίνουν στο στοιχείο που αποδίδεται, οπότε τα className, style και οι χειριστές συμβάντων λειτουργούν κανονικά.
Web και React Native
Κάθε στοιχείο παίρνει ένα στοιχείο περιτύλιξης (li μέσα σε ul ή ol, αλλιώς div· το itemAs το αλλάζει) με στυλ από το itemClassName.
Τα keys πρέπει να είναι μοναδικά. Τυλίξτε τη λίστα σε MotionHeight για να κινείται και το συνολικό της ύψος.
Χρησιμοποιείται σε αυτά τα παραδείγματα
- Απάντηση σε συνομιλίαΠροτάσεις που διπλώνουν, μια απάντηση σε ροή με σταθερό ρυθμό και μια γραμμή κατάστασης που εναλλάσσεται.
MotionStreamMotionListMotionSwapMotionHeight - Σύνοψη ολοκλήρωσης αγοράςΟι ποσότητες, τα σύνολα γραμμών και το συνολικό ποσό κυλούν καθώς αλλάζει το καλάθι· η ειδοποίηση κουπονιού μπαίνει και βγαίνει· η πληρωμή απαιτεί σκόπιμο παρατεταμένο πάτημα.
MotionListMotionNumberMotionPresenceMotionHold - ΕισερχόμεναΚαρτέλες φίλτρων με ζωντανούς μετρητές, γραμμές που απομακρύνονται με σάρωση και μια λίστα που κλείνει το κενό.
MotionHighlightMotionListMotionSwipeMotionNumber