cari
Rumahhujung hadapan webtutorial cssMembuat Animasi Menggunakan React Spring

Membuat Animasi Menggunakan React Spring

Mengintegrasikan animasi ke dalam aplikasi React anda secara tradisinya mencabar. Walau bagaimanapun, React-Spring, perpustakaan yang kuat yang dicipta oleh Paul Henschel, memudahkan prosesnya dengan ketara. Membina atas animasi dan bertindak balas, ia menawarkan prestasi yang dioptimumkan dan API yang diselaraskan.

Tutorial ini meneroka dua cangkuk React-Spring: useSpring dan useTrail . Kami akan menggambarkan penggunaan mereka melalui contoh praktikal.

Untuk memulakan, pasang React-Spring:

 # benang
Benang Tambah React-Spring

# npm
NPM Pasang React-Spring-Save

Animasi dengan useSpring

Hook useSpring memudahkan peralihan yang lancar di antara negeri -negeri. Kami menentukan from dan to sifat untuk menentukan titik permulaan dan akhir animasi. from menetapkan keadaan awal, sementara to menentukan keadaan akhir.

Contoh pertama kami menggunakan useSpring untuk menghidupkan kotak yang meluncur ke skrin. Pada mulanya tersembunyi, ternyata apabila butang diklik.

 Import React, {Usestate} dari 'React';
import {usespring, animated} dari 'react-spring';

const app = () => {
  const [showContent, setShowContent] = useState (false);
  const contentProps = usespring ({
    Opacity: showcontent? 1: 0,
    Margintop: Pertunjukan? 0: -1000,
    config: {duration: 500} // Pilihan: tambah tempoh animasi
  });

  kembali (
    <div classname="container">
      <button classname="button" onclick="{()"> setShowContent (! ShowContent)}>
        Togol kandungan
      </button>
      <animated.div classname="box" style="{contentProps}">
        <h1 id="Kandungan-ini-merosot-terima-kasih-kepada-React-Spring">Kandungan ini merosot terima kasih kepada React Spring!</h1>
      </animated.div>
    </div>
  );
};

The useSpring Hook menguruskan animasi. Apabila showContent adalah benar, kotak itu slaid ke bawah dan menjadi kelihatan; Jika tidak, ia tetap tersembunyi di luar skrin.

Senarai Animasi dengan useTrail

useTrail Hook menghidupkan senarai item secara berurutan. Setiap item menghidupkan selepas yang terdahulu. Mari kita mengambil senarai pengguna dan menghidupkan rendering mereka.

 import react, {usestate, useeffect} dari 'react';
import {useTrail, animasi} dari 'React-Spring';

const app = () => {
  const [pengguna, setUsers] = useState ([]);
  useeffect (() => {
    Ambil ('https://jsonplaceholder.typicode.com/users')
      .THEN (res => res.json ())
      .tua (data => setUsers (data));
  }, []);

  const jejak = useTrail (users.length, {
    dari: {marginLeft: -20, kelegapan: 0, transform: 'translate3d (0, -40px, 0)'},
    ke: {marginLeft: 20, kelegapan: 1, transform: 'translate3d (0,0px, 0)'},
    Config: {Mass: 5, Ketegangan: 2000, Geseran: 200} // Pilihan: Animasi Fine-Tune
  });

  kembali (
    <div>
      <h1 id="Pengguna-rawak">Pengguna rawak</h1>
      {trail.map (({style}, index) => (
        <animated.div key="{users[index]?.id}" classname="box" style="{style}">
          {Users [Index] ?. Nama Pengguna}
        </animated.div>
      ))}
    </div>
  );
};

useTrail mencipta animasi yang berperingkat untuk senarai pengguna. Setiap nama pengguna slaid dengan sedikit kelewatan. Pengendalian ralat dan konfigurasi pilihan untuk animasi yang lebih lancar dimasukkan.

Kesimpulan

React Spring menyediakan pendekatan mesra pengguna terhadap animasi dalam aplikasi React. Terokai dokumentasi dan contohnya yang luas untuk membuka kunci kemungkinan animasi kreatif. Ingatlah untuk mempertimbangkan kebolehcapaian semasa melaksanakan animasi.

Atas ialah kandungan terperinci Membuat Animasi Menggunakan React Spring. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Kedudukan sauh hanya tidak peduli dengan urutan sumberKedudukan sauh hanya tidak peduli dengan urutan sumberApr 29, 2025 am 09:37 AM

Hakikat bahawa kedudukan sauh menghindari perintah sumber HTML adalah begitu CSS-y kerana ia ' s lain pemisahan kebimbangan antara kandungan dan persembahan.

Apakah margin: 40px 100px 120px 80px menandakan?Apakah margin: 40px 100px 120px 80px menandakan?Apr 28, 2025 pm 05:31 PM

Artikel membincangkan harta margin CSS, khususnya "Margin: 40px 100px 120px 80px", permohonannya, dan kesan pada susun atur halaman web.

Apakah sifat sempadan CSS yang berbeza?Apakah sifat sempadan CSS yang berbeza?Apr 28, 2025 pm 05:30 PM

Artikel ini membincangkan sifat sempadan CSS, memberi tumpuan kepada penyesuaian, amalan terbaik, dan respons. Hujah utama: Radius sempadan adalah yang paling berkesan untuk reka bentuk responsif.

Apakah latar belakang CSS, menyenaraikan sifat?Apakah latar belakang CSS, menyenaraikan sifat?Apr 28, 2025 pm 05:29 PM

Artikel ini membincangkan sifat latar belakang CSS, kegunaan mereka dalam meningkatkan reka bentuk laman web, dan kesilapan umum untuk dielakkan. Fokus utama adalah pada reka bentuk responsif menggunakan saiz latar belakang.

Apakah warna CSS HSL?Apakah warna CSS HSL?Apr 28, 2025 pm 05:28 PM

Artikel membincangkan warna CSS HSL, penggunaannya dalam reka bentuk web, dan kelebihan RGB. Tumpuan utama adalah untuk meningkatkan reka bentuk dan kebolehcapaian melalui manipulasi warna intuitif.

Bagaimana kita boleh menambah komen dalam CSS?Bagaimana kita boleh menambah komen dalam CSS?Apr 28, 2025 pm 05:27 PM

Artikel ini membincangkan penggunaan komen dalam CSS, memperincikan sintaksis komen tunggal dan multi-line. Ia berpendapat bahawa komen meningkatkan kebolehbacaan kod, kebolehkerjaan, dan kerjasama, tetapi mungkin memberi kesan kepada prestasi laman web jika tidak diuruskan dengan betul.

Apakah pemilih CSS?Apakah pemilih CSS?Apr 28, 2025 pm 05:26 PM

Artikel ini membincangkan pemilih CSS, jenis mereka, dan penggunaan untuk elemen HTML gaya. Ia membandingkan pemilih ID dan kelas dan menangani masalah prestasi dengan pemilih yang kompleks.

Jenis CSS mana yang memegang keutamaan tertinggi?Jenis CSS mana yang memegang keutamaan tertinggi?Apr 28, 2025 pm 05:25 PM

Artikel ini membincangkan keutamaan CSS, memberi tumpuan kepada gaya inline yang mempunyai kekhususan tertinggi. Ia menerangkan tahap kekhususan, kaedah utama, dan alat penyahpepijatan untuk menguruskan konflik CSS.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma