Penghala React v6: Panduan Lengkap
React Router ialah perpustakaan paling popular yang digunakan untuk penghalaan dalam aplikasi React. Ia membolehkan anda menavigasi antara komponen berbeza berdasarkan URL, menyediakan pengalaman aplikasi satu halaman (SPA) di mana kandungan mengemas kini tanpa memuatkan semula keseluruhan halaman. React Router v6 ialah keluaran utama terkini dan memperkenalkan pelbagai penambahbaikan, pemudahan dan ciri baharu berbanding versi sebelumnya.
Ciri Utama dan Perubahan dalam Penghala Reaksi v6
-
API Dipermudahkan
- React Router v6 memperkenalkan API yang lebih mudah dan lebih intuitif untuk menentukan laluan dan navigasi, menghapuskan keperluan untuk banyak penyelesaian yang terdapat dalam v5.
-
Elemen Laluan (elemen)
- Dalam v6, laluan kini menggunakan prop elemen dan bukannya prop komponen atau render. Ini membolehkan anda menghantar terus komponen untuk dipaparkan.
- Lama (v5): component={ComponentName}
-
Baharu (v6): element={
}
-
Padanan Laluan
- Padanan laluan kini lebih intuitif. Dalam v6, laluan dipadankan dengan tepat, bermakna padanan terbaik dipilih dan ia tidak lagi memerlukan laluan "tangkap semua" untuk mengendalikan segmen dinamik.
-
komponen digantikan dengan , dan ia digunakan untuk memaparkan hanya laluan pertama yang sepadan dengan URL.
-
Laluan Bersarang
- React Router v6 menjadikannya lebih mudah untuk menentukan laluan bersarang. Daripada menggunakan render atau anak untuk bersarang, anda kini boleh menentukan terus laluan bersarang menggunakan prop elemen.
-
Tiada Lagi tepat
- Dalam React Router v6, semua laluan sepadan secara lalai, jadi tidak perlu menggunakan prop tepat untuk menentukan padanan tepat.
-
Cangkuk Penghala Bertindak Balas
- React Router v6 telah mengemas kini cangkuk agar sepadan dengan seni bina baharunya, termasuk useNavigate, useParams, useLocation, useMatch dan useNavigate.
Cara Menyediakan Penghala Reaksi v6
Untuk bermula dengan React Router v6, ikut langkah ini:
1. Pasang React Router v6
Anda boleh memasang React Router v6 menggunakan npm atau benang.
npm install react-router-dom@6 # or yarn add react-router-dom@6
2. Tentukan Laluan dan Komponen
Mari lihat contoh cara menyediakan penghalaan asas dalam Penghala Reaksi v6.
Langkah 1: Tentukan Komponen Apl Utama
npm install react-router-dom@6 # or yarn add react-router-dom@6
-
: Ini menggantikan komponen daripada versi sebelumnya. Ia memastikan bahawa hanya laluan padanan pertama dipaparkan. -
} />: Ini mentakrifkan laluan untuk halaman utama dan menjadikan komponen Home. -
: Kad bebas * digunakan untuk mengendalikan 404 ralat atau laluan tidak sepadan, menjadikan komponen NotFound apabila URL tidak sepadan dengan mana-mana laluan.
Langkah 2: Cipta Komponen Individu
Home.js
import React from 'react'; import { BrowserRouter as Router, Routes, Route } from 'react-router-dom'; import Home from './Home'; import About from './About'; import NotFound from './NotFound'; const App = () => { return ( <Router> <Routes> <Route path="/" element={<Home />} /> <Route path="/about" element={<About />} /> <Route path="*" element={<NotFound />} /> </Routes> </Router> ); }; export default App; <p><strong>Mengenai.js</strong><br> </p> <pre class="brush:php;toolbar:false">import React from 'react'; const Home = () => { return <h2>Home Page</h2>; }; export default Home;
NotFound.js
import React from 'react'; const About = () => { return <h2>About Us</h2>; }; export default About;
Penghalaan Dinamik dengan Penghala React v6
Untuk mengendalikan laluan dinamik, seperti halaman profil pengguna yang ID pengguna adalah sebahagian daripada URL, React Router v6 menyediakan cangkuk useParams.
Langkah 1: Tentukan Laluan Dinamik
import React from 'react'; const NotFound = () => { return <h2>Page Not Found</h2>; }; export default NotFound;
Penjelasan:
- :userId ialah segmen dinamik dalam laluan laluan. Cangkuk useParams membolehkan anda mengakses nilai userId dalam komponen UserProfile.
- Apabila anda menavigasi ke /user/123, komponen UserProfile akan memaparkan dan memaparkan userId sebagai 123.
Laluan Bersarang dalam Penghala Reaksi v6
Laluan bersarang membolehkan anda membina reka letak yang kompleks dengan mentakrifkan sub-laluan dalam laluan induk.
Langkah 1: Tentukan Laluan Ibu Bapa dan Anak
import React from 'react'; import { Routes, Route, useParams } from 'react-router-dom'; const UserProfile = () => { const { userId } = useParams(); // Extract the userId from the URL return <h2>User Profile for ID: {userId}</h2>; }; const App = () => { return ( <Routes> <Route path="/user/:userId" element={<UserProfile />} /> </Routes> ); }; export default App;
Penjelasan:
- Komponen Papan Pemuka mengandungi laluan bersarang untuk gambaran keseluruhan dan tetapan.
- /* dalam laluan induk memastikan semua laluan kanak-kanak dikendalikan di bawah /papan pemuka.
Cangkuk Penghala Bertindakbalas v6
React Router v6 memperkenalkan beberapa cangkuk untuk menavigasi dan mengakses maklumat penghalaan:
- useNavigate: Navigasi secara atur cara ke laluan berbeza.
- useParams: Akses parameter URL dinamik.
- useLocation: Dapatkan maklumat tentang lokasi semasa (URL).
- useMatch: Memadankan URL semasa dengan laluan yang diberikan.
- useResolvedPath: Selesaikan laluan ke URL mutlak.
Contoh: useNavigate Hook
Kait useNavigate membenarkan navigasi terprogram dalam aplikasi anda.
npm install react-router-dom@6 # or yarn add react-router-dom@6
Amalan Terbaik Penghala React v6
- Padanan Tepat mengikut Lalai: Penghala Reaksi v6 sepadan dengan laluan secara lalai, menjadikannya lebih mudah untuk mengendalikan padanan laluan tanpa perlu menyatakan tepat.
- Gunakan elemen Prop: Hantar JSX terus ke prop elemen dan bukannya menggunakan prop komponen, memudahkan kod anda dan mengurangkan keperluan untuk fungsi render.
- Penghalaan Bersarang: Gunakan laluan bersarang untuk membina reka letak halaman yang kompleks dengan laluan anak, memastikan kod anda modular dan boleh diselenggara.
- Kendalikan 404s dengan Laluan Wildcard: Gunakan kad bebas * untuk menangkap semua laluan yang tidak dapat dipadankan dan memaparkan halaman 404 atau mengubah hala pengguna ke laluan lalai.
Kesimpulan
React Router v6 memperkenalkan beberapa penambahbaikan berbanding versi sebelumnya, termasuk API yang lebih ringkas, padanan laluan yang lebih baik dan sokongan yang dipertingkatkan untuk laluan dinamik dan bersarang. Dengan memanfaatkan cangkuk seperti useNavigate, useParams dan useLocation, anda boleh membina sistem penghalaan yang berkuasa dan fleksibel dalam aplikasi React anda.
Atas ialah kandungan terperinci Memahami vCiri Penghala Reaksi, Persediaan dan Amalan Terbaik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza, masing -masing sesuai untuk senario aplikasi yang berbeza. Java digunakan untuk pembangunan aplikasi perusahaan dan mudah alih yang besar, sementara JavaScript digunakan terutamanya untuk pembangunan laman web.

JavaScriptcommentsareessentialformaintaining,reading,andguidingcodeexecution.1)Single-linecommentsareusedforquickexplanations.2)Multi-linecommentsexplaincomplexlogicorprovidedetaileddocumentation.3)Inlinecommentsclarifyspecificpartsofcode.Bestpractic

Titik berikut harus diperhatikan apabila tarikh pemprosesan dan masa di JavaScript: 1. Terdapat banyak cara untuk membuat objek tarikh. Adalah disyorkan untuk menggunakan rentetan format ISO untuk memastikan keserasian; 2. Dapatkan dan tetapkan maklumat masa boleh diperoleh dan tetapkan kaedah, dan ambil perhatian bahawa bulan bermula dari 0; 3. Tarikh pemformatan secara manual memerlukan rentetan, dan perpustakaan pihak ketiga juga boleh digunakan; 4. Adalah disyorkan untuk menggunakan perpustakaan yang menyokong zon masa, seperti Luxon. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan kesilapan yang sama.

JavaScriptispreferredforwebdevelopment, whersjavaisbetterforlarge-scalebackendsystemsandandroidapps.1) javascriptexcelsinceleatinginteractiveWebexperienceswithitsdynamicnatureanddommanipulation.2) javaoffersstrongyblectionandobjection

PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

JavascripthassevenfundamentalDatypes: nombor, rentetan, boolean, undefined, null, objek, andsymbol.1) numberuseadouble-precisionformat, bergunaforwidevaluangesbutbecautiouswithfloating-pointarithmetic.2)

Penangkapan dan gelembung acara adalah dua peringkat penyebaran acara di Dom. Tangkap adalah dari lapisan atas ke elemen sasaran, dan gelembung adalah dari elemen sasaran ke lapisan atas. 1. Penangkapan acara dilaksanakan dengan menetapkan parameter useCapture addeventlistener kepada benar; 2. Bubble acara adalah tingkah laku lalai, useCapture ditetapkan kepada palsu atau ditinggalkan; 3. Penyebaran acara boleh digunakan untuk mencegah penyebaran acara; 4. Acara menggelegak menyokong delegasi acara untuk meningkatkan kecekapan pemprosesan kandungan dinamik; 5. Penangkapan boleh digunakan untuk memintas peristiwa terlebih dahulu, seperti pemprosesan pembalakan atau ralat. Memahami kedua -dua fasa ini membantu mengawal masa dan bagaimana JavaScript bertindak balas terhadap operasi pengguna.

Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza. 1.Java adalah bahasa yang ditaip dan disusun secara statik, sesuai untuk aplikasi perusahaan dan sistem besar. 2. JavaScript adalah jenis dinamik dan bahasa yang ditafsirkan, terutamanya digunakan untuk interaksi web dan pembangunan front-end.
