- Verschifft
- 19. August 2026 um 20:27 UTC
- Autor
- Kamo
- Ausschuss
- f911fd4
Schritt A der Hydratation Arbeit. Framer Motion ist von der Homepage eifrig verschwunden Bundle: 798.723 -" 687.593 Bytes roh, 245.367 - 209.422 gzip. Das sind 35.945 weniger Bytes über dem Draht, gegen eine Vorhersage von 36.444 durch Messung der chunk vorher, plus die Parse und Ausführung, die mit ihm kam. Vierzehn Komponenten haben es verwendet. Keiner von ihnen brauchte es. Jeder Abschnitt unter deren Klappe fuhr einen "währendInView" oder einen "useInView" von Reagieren-Intersection-Beerserver, um seinen Inhalt auf Scroll verblassen. Das sind zwei Bibliotheken und eine Hydratation Grenze pro Abschnitt zu tun, was "Animation-Timeline: view()" tut nativ, auf dem Komponist, ohne Laufzeit und es trug den gleichen Defekt der Held hatte, weil Framer serialisiert in den Server HTML. 96 Elemente kamen bei "Opacity" an: 0" und blieben unsichtbar, bis Reagieren hydratisiert. Inhalt unter der Falte wurde auf einem JavaScript geded gated Bündel. Es ist jetzt 9, und alle neun sind absichtlich: die JumpToBar vor seinem ersten Scroll, der Held Rolle, bevor es gewollt ist, und sieben sechseckige Dekorationen bei Opacity 0.1-0.15, dass ein Substring-Match für "opacity:0" fängt. Die "@supports"-Wache ist der tragende Teil. Die base ".reveal"-Regel setzt keine eigene Deckung, so dass ein Browser ohne scroll-driven Animationen gelten nichts und der Inhalt ist einfach sichtbar. Nichts hier kann versteckte Inhalte versenden, die die Eigenschaft ist, die die alte Version nicht hatte. Der Rest war kleiner und offensichtlicher deplatziert: · "WhileHover" / "whileTap" auf Karten und Knöpfe wurde .lift" und ".press". Hover Feedback, das Flüssigkeitszufuhr benötigt, bevor es funktionierte, war immer die falsche Form. · HoverMorph führte eine *unend* Keyframe-Schleife auf "border-radius" einer Immobilie der Kompositor kann nicht animieren, solange ein Zeiger auf einer Karte ruht. Es ist jetzt ein Übergang. · FAQ's Akkordeon animiert "Höhe: 0 -" auto, der eine Übergang CSS könnte nicht für Jahre und ein fairer Grund, für eine Bibliothek zu greifen. Eine Gitterreihe gehen .0fr - 1fr" tut es nativ. Die Antworten bleiben auch im DOM, während brach jetzt, wo die Anwesenheit Übergang verwendet, um sie zu entstellen, so find-in-page und Suchmaschinen können sie sehen; die Tasten haben die "Aaria-erweitert", die sie immer gehabt haben sollten. · HeroOfferBanner importierte die gesamte Laufzeit für "useReducedMotion", die eine Medienabfrage. · Footer wickelte die locale-aware <Link] in .motion.create] so ein Hover-Status könnte animieren, die die Laufzeit in das gemeinsame Layout jeder Seite setzen. MagneticButton ist das Einzige, was wirklich verloren geht. Es kippte die CTA in Richtung der war der letzte Import hielt 36 KB an Ort und Stelle - für einen Effekt kein Touch-Gerät kann Überhaupt produzieren. Die Taste behält die Taste ".press". Seine Datei wird im Baum gelassen, unbenutzt; es lohnt sich zu wissen, dass der Import es wieder still und leise Wiederherstellung der Laufzeit. Die Konvertierung wurde von einem Scanner und nicht von Regex durchgeführt, und es ist in der Session Scratchpad statt des Repos, weil es ein einmaliges ist. JSX-Attribut Werte enthalten verschachtelte Klammern, Strings und Pfeilfunktionen, so dass "<motion.div ..." kann nicht durch etwas, das nicht die Tiefe verfolgt werden - jede Animation-only Requisite wurde fallen gelassen und alles andere wortwörtlich und in der Reihenfolge erhalten. Jede Datei diff wurde danach einzeln gelesen; Features hatten zwei Variantenobjekte übrig Von ihm verwaist, und diese werden entfernt. Was dies NICHT tun, ist die Abschnitte zu stoppen hydratisieren - sie sind alle noch "Verwende Client", weil HomeClient ist, und eine Client-Komponente kann nicht importieren Server eins. Das ist Schritt B, und es ist eine Änderung der Zusammensetzung der Seite eher als auf diese Dateien. Dieser Schritt landet bewusst allein, so dass die Enthüllungen sein können schaute in einem Browser, bevor sich etwas Struktur bewegt.