suchen
HeimWeb-FrontendCSS-TutorialErstellen von Animationen mit React Spring

Erstellen von Animationen mit React Spring

Die Integration von Animationen in Ihre React -Anwendungen war traditionell eine Herausforderung. React-Pring, eine leistungsstarke Bibliothek, die von Paul Henschel geschaffen wurde, vereinfacht den Prozess erheblich. Aufbauend auf animierten und reagierten Motion bietet es eine optimierte Leistung und eine optimierte API.

In diesem Tutorial werden zwei der fünf Hooks von React-Spring untersucht: useSpring und useTrail . Wir werden ihre Verwendung anhand praktischer Beispiele veranschaulichen.

Um zu beginnen, installieren Sie die React-Stunde:

 # Garn
Garn addieren Reaktionen

# NPM
NPM Installation React-Still

Animieren mit useSpring

Der useSpring erleichtert reibungslose Übergänge zwischen den Zuständen. Wir definieren from und to Eigenschaften, um die Start- und Endpunkte der Animation anzugeben. from den Ausgangszustand, während der endgültige Zustand to .

Unser erstes Beispiel verwendet useSpring um eine Box zu animieren, die auf den Bildschirm gleitet. Anfänglich versteckt, wird es angezeigt, wenn eine Schaltfläche klickt.

 reag import, {usestate} aus 'react';
Import {useSpring, animiert} aus 'react-pring';

const app = () => {
  const [showcontent, setShowContent] = usustate (false);
  const contentProps = useSpring ({{
    Opazität: Showcontent? 1: 0,
    Margintop: Showcontent? 0: -1000,
    Konfiguration: {Dauer: 500} // Optional: Animationsdauer hinzufügen
  });

  zurückkehren (
    <div classname="container">
      <button classname="button" onclick="{()"> setShowContent (! Showcontent)}>
        Inhalt umschalten
      </button>
      <animated.div classname="box" style="{contentProps}">
        <h1 id="Dieser-Inhalt-hat-sich-dank-React-Spring-niedergeschlagen">Dieser Inhalt hat sich dank React Spring niedergeschlagen!</h1>
      </animated.div>
    </div>
  );
};

Der useSpring Hook verwaltet die Animation. Wenn showContent wahr ist, rutscht die Box nach unten und wird sichtbar; Andernfalls bleibt es außerhalb des Bildschirms versteckt.

Animationslisten mit useTrail

Der useTrail -Hook animiert nacheinander eine Liste von Elementen. Jeder Element animiert nach dem vorhergehenden. Lassen Sie uns eine Liste von Benutzern holen und deren Rendering animieren.

 reag importieren, {usestate, useEffect} aus 'react';
importieren {usetrail, animiert} aus 'react-pring';

const app = () => {
  const [Benutzer, SetUsers] = Usestate ([]);
  useEffect (() => {
    Fetch ('https://jsonplaceholder.typicode.com/users'))
      .then (res => res.json ())
      .then (Data => setUsers (data));
  }, []);

  const Trail = Usetrail (Benutzer.length, {
    Von: {marginleft: -20, Deckkraft: 0, Transform: 'Translate3d (0, -40px, 0)'},
    an: {marginleft: 20, Deckkraft: 1, Transform: 'Translate3d (0,0px, 0)'},
    Konfiguration: {Mass: 5, Spannung: 2000, Reibung: 200} // Optional: Fein-Tune-Animation
  });

  zurückkehren (
    <div>
      <h1 id="Zufällige-Benutzer">Zufällige Benutzer</h1>
      {Trail.map (({style}, index) => (
        <animated.div key="{users[index]?.id}" classname="box" style="{style}">
          {Benutzer [Index] ?. Benutzername}
        </animated.div>
      ))}
    </div>
  );
};

useTrail erstellt eine gestaffelte Animation für die Benutzerliste. Jeder Benutzername rutscht mit einer leichten Verzögerung ein. Fehlerbehandlung und optionale Konfiguration für glattere Animationen sind enthalten.

Abschluss

React Spring bietet einen benutzerfreundlichen Ansatz für Animation in React-Anwendungen. Erforschen Sie die umfangreichen Dokumentation und Beispiele, um kreative Animationsmöglichkeiten freizuschalten. Denken Sie daran, die Barrierefreiheit bei der Implementierung von Animationen zu berücksichtigen.

Das obige ist der detaillierte Inhalt vonErstellen von Animationen mit React Spring. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Ankerpositionierung kümmert sich nur um die QuellenreihenfolgeAnkerpositionierung kümmert sich nur um die QuellenreihenfolgeApr 29, 2025 am 09:37 AM

Die Tatsache, dass die Ankerpositionierung die HTML-Quellenreihenfolge vermeidet, ist so CSS-y, weil sie eine weitere Trennung von Bedenken zwischen Inhalt und Präsentation ist.

Was bedeutet Margin: 40px 100px 120px 80px?Was bedeutet Margin: 40px 100px 120px 80px?Apr 28, 2025 pm 05:31 PM

In Artikel wird die CSS -Margin -Eigenschaft erörtert, insbesondere "Margin: 40px 100px 120px 80px", seine Anwendung und Auswirkungen auf das Webseitenlayout.

Was sind die verschiedenen CSS -Grenzeigenschaften?Was sind die verschiedenen CSS -Grenzeigenschaften?Apr 28, 2025 pm 05:30 PM

In dem Artikel werden die CSS -Grenzeigenschaften erörtert und sich auf Anpassung, Best Practices und Reaktionsfähigkeit konzentriert. Hauptargument: Border-Radius ist für reaktionsschnelle Designs am effektivsten.

Was sind CSS -Hintergründe, listen Sie die Eigenschaften auf?Was sind CSS -Hintergründe, listen Sie die Eigenschaften auf?Apr 28, 2025 pm 05:29 PM

In dem Artikel werden CSS -Hintergrundeigenschaften, deren Verwendungszwecke für die Verbesserung des Website -Designs und die zu vermeidenen Fehler erläutert. Der Hauptaugenmerk liegt auf reaktionsschnellem Design unter Verwendung der Hintergrundgröße.

Was sind CSS HSL -Farben?Was sind CSS HSL -Farben?Apr 28, 2025 pm 05:28 PM

In Artikel werden CSS HSL -Farben, ihre Verwendung im Webdesign und die Vorteile gegenüber RGB erörtert. Der Schwerpunkt liegt auf der Verbesserung des Designs und der Zugänglichkeit durch intuitive Farbmanipulation.

Wie können wir Kommentare in CSS hinzufügen?Wie können wir Kommentare in CSS hinzufügen?Apr 28, 2025 pm 05:27 PM

In dem Artikel wird die Verwendung von Kommentaren in CSS erörtert, in denen Einzellinien- und Multi-Line-Kommentarsyntaxe beschrieben werden. Es wird argumentiert, dass die Kommentare die Lesbarkeit, die Wartbarkeit und die Zusammenarbeit von Code verbessern, sich jedoch auf die Leistung der Website auswirken können, wenn sie nicht ordnungsgemäß verwaltet werden.

Was sind CSS -Selektoren?Was sind CSS -Selektoren?Apr 28, 2025 pm 05:26 PM

In dem Artikel werden CSS -Selektoren, ihre Typen und die Verwendung zum Styling von HTML -Elementen erörtert. Es vergleicht ID- und Klassenauswahlern und befasst sich mit Leistungsproblemen mit komplexen Selektoren.

Welche Art von CSS hat die höchste Priorität?Welche Art von CSS hat die höchste Priorität?Apr 28, 2025 pm 05:25 PM

In dem Artikel wird die CSS -Priorität erläutert und sich auf Inline -Stile mit der höchsten Spezifität konzentriert. Es erklärt Spezifitätsniveaus, übergeordnete Methoden und Debugging -Tools zur Verwaltung von CSS -Konflikten.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools