Οδηγοί · 08

Απόδοση και αναπαραγωγή

Πώς το Animated αποφεύγει τη δουλειά ανά καρέ, πώς ελέγχετε ποια διαδρομή χρησιμοποιεί ένα στοιχείο και πώς μετρήθηκαν οι αριθμοί της αρχικής σελίδας.

Τρεις διαδρομές αναπαραγωγής

Το Animated επιλέγει διαδρομή ανά ιδιότητα. Το API δεν αλλάζει ανάλογα με τη διαδρομή.

ΔιαδρομήΠότεΔουλειά ανά καρέ
browserΠεπερασμένη κίνηση transform και opacity σε στοιχεία Animated.<tag>, μαζί με ελατήριαΚαμία στη JavaScript της σελίδας
cssΑκριβείς καμπύλες που το πρόγραμμα περιήγησης μπορεί να εκφράσει με κοινά keyframes CSSΚαμία στη JavaScript της σελίδας
jsΜεταβλητές απλού στυλ, είσοδος, δικός σας υπολογισμός και όρια sequenceΜία εγγραφή ανά τιμή, χωρίς απόδοση React

Μία τιμή, πολλά στοιχεία

Τα παράγωγα μιας τιμής hook είναι εκφράσεις calc(). Με scope, μία εγγραφή μεταβλητής ανά καρέ οδηγεί κάθε στοιχείο του κοντέινερ.

Προετοιμασία παραδείγματος…

Ελέγξτε τη διαδρομή

Το inspect(element) επιστρέφει τον driver και τον λόγο εναλλακτικής διαδρομής για κάθε κινούμενη ιδιότητα κατά τη διάρκεια μιας πραγματικής εκτέλεσης.

debug.js
import { inspect } from '@kkwaenggwari/animated';

console.table(inspect(element));
// property   driver     reason
// transform  browser    null
// opacity    css        null
// --level    js         css-variable-requires-js

Ξεκινά από το πρώτο καρέ

Όταν η εργασία που ξεκινά μια κίνηση απασχολεί το κύριο νήμα, όπως το hydration ή ένα μεγάλο commit, η κίνηση ξαναξεκινά όταν τελειώσει εκείνη η δουλειά αντί να φαίνεται ήδη προχωρημένη. Μια εκκίνηση σε κρυφή σελίδα ολοκληρώνεται στο παρασκήνιο.

Πώς μετρήθηκαν οι αριθμοί της αρχικής σελίδας

Κάθε σενάριο έτρεξε σε νέα σελίδα μετά από μία προθέρμανση, με τρία καταγεγραμμένα δείγματα, και αναφέρεται η διάμεσος. Ο χρόνος JavaScript είναι ο χρόνος μέσα σε callbacks animation-frame όσο τρέχει η κίνηση. Δεν περιλαμβάνει στυλ, διάταξη και σχεδίαση, που το πρόγραμμα περιήγησης κάνει σε κάθε προσέγγιση, οπότε δεν είναι μέτρο του συνολικού CPU ή του ρυθμού καρέ.

Η αναπαραγωγή από το πρόγραμμα περιήγησης δεν κάνει δωρεάν τη διάταξη, τη σχεδίαση, τη σύνθεση ή τη μνήμη. Μετρήστε την πραγματική οθόνη στις συσκευές που υποστηρίζετε.

ΣενάριοΡύθμισηΑποτέλεσμα
400 Animated.div elements move translateX and fade in (timing, 1800 ms)seed/pose/tempo on Animated.div; 800 browser animations0.00 ms
One useAnimated value drives 10,000 elements in ordinary style (loop, 1200 ms)transform and opacity as calc() of one CSS variable written on a scope element0.13 ms

2026-09-28 · Chrome 153.0.8010.52 (headless) · Windows_NT x64 · Intel(R) Core(TM) i7-14700K

Αναζήτηση

Πληκτρολογήστε για αναζήτηση στην τεκμηρίωση.