In den eigenen Worten des Skills
gsap.utils ist GSAPs Sammlung reiner Hilfsfunktionen für Mathematik, Bereiche, Einheiten, Farben und Collections und benötigt keine Registrierung. Das Skill dokumentiert clamp, mapRange, normalize, interpolate, random, snap, shuffle, distribute, getUnit, unitize, splitColor, selector, toArray, pipe, wrap und wrapYoyo mit ihren Signaturen, Standardwerten und durchgerechneten Ausgaben.
Es ist für Entwickler gedacht, die GSAP-Code schreiben oder prüfen, der Scroll auf einen Wert abbilden, Eingaben normalisieren, auf ein Raster einrasten oder Selektoren in einer Komponente eingrenzen muss. Ein Muster zieht sich durch die Datei: Lassen Sie den abschließenden Wert weg, um eine wiederverwendbare Funktion zu erhalten – außer bei random(), das true erwartet.
Was er erzeugt
- Der transformierte Wert, direkt zurückgegeben, wenn Sie das Argument value übergeben
- Eine wiederverwendbare Funktion, die Werte, die Sie ihr später übergeben, begrenzt, abbildet, normalisiert oder einrastet
- Ein neues Array mit denselben Elementen in zufälliger Reihenfolge
- Eine gescopte Selektorfunktion, die Elemente nur innerhalb des angegebenen Elements oder Refs findet
So funktioniert es
- 01Helper leben auf gsap.utils
Die Utils sind reine Helper, die keine Registrierung benötigen und überall dort aufgerufen werden können, wo JS GSAP steuert: in Tween-Vars, ScrollTrigger- oder Observer-Callbacks.
- 02Wert zuletzt übergeben, Ergebnis sofort erhalten
Die meisten Utils nehmen zuerst ihre Konfiguration und als letztes Argument den zu transformierenden Wert und geben das transformierte Ergebnis sofort zurück.
- 03Lassen Sie ihn weg für eine Funktionsform
Lassen Sie diesen letzten Wert weg, und das Util gibt Ihnen eine Funktion zurück, die Sie später mit dem Wert aufrufen, sodass eine Konfiguration vielen Werten dienen kann.
- 04Denken Sie daran: Random() kehrt das Muster um
random() nutzt für seine wiederverwendbare Form nicht das Weglassen; Sie übergeben true als letztes Argument und erhalten eine Funktion, die bei jedem Aufruf einen neuen Wert liefert.
- 05Snap kann direkt im Tween gesetzt werden
Für Raster- oder schrittbasierte Bewegung können Sie snap direkt in den Tween-Vars übergeben, statt zuerst das Util aufzurufen.
- 06Transformationen mit Pipe verketten
pipe setzt Funktionen von links nach rechts zusammen, sodass normalize und dann snap als eine einzige Funktion innerhalb eines Tweens oder Callbacks angewendet werden können.