Bagaimana untuk Melaksanakan Penghalaan Bersarang dalam Penghala Reaksi v4/v5?

DDD
Lepaskan: 2024-11-01 16:42:31
asal
293 orang telah melayarinya

How to Implement Nested Routing in React Router v4/v5?

Penghalaan Bersarang dengan Penghala React v4/v5

Penghala Bersarang menyediakan mekanisme yang berkuasa untuk mencipta laluan bersarang dalam aplikasi React anda. Ini membolehkan anda memodulasi laluan anda dan mencipta struktur navigasi yang kompleks.

Untuk mencipta laluan bersarang dalam React Router v4, anda akan menentukan laluan induk dan menentukan laluan anak di dalamnya. Contohnya, untuk mengasingkan apl anda kepada bahagian hadapan dan pentadbir:

<code class="jsx"><Match pattern="/" component={Frontpage}>
  <Match pattern="/home" component={HomePage} />
  <Match pattern="/about" component={AboutPage} />
</Match>
<Match pattern="/admin" component={Backend}>
  <Match pattern="/home" component={Dashboard} />
  <Match pattern="/users" component={UserPage} />
</Match>
<Miss component={NotFoundPage} /></code>
Salin selepas log masuk

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa dalam React Router v4, laluan tidak bersarang dalam laluan lain. Sebaliknya, laluan kanak-kanak diletakkan di dalam komponen induk. Oleh itu, kod di atas akan ditukar kepada:

<code class="jsx"><Route path="/" component={Frontpage} /></code>
Salin selepas log masuk

Dengan komponen induk ini:

<code class="jsx">const Frontpage = ({ match }) => (
  <div>
    <h2>Frontend</h2>
    <Link to={`${match.url}/home`}>Home</Link>
    <Link to={`${match.url}/about`}>About</Link>
    <Route path={`${match.path}/home`} component={HomePage} />
    <Route path={`${match.path}/about`} component={AboutPage} />
  </div>
);</code>
Salin selepas log masuk

Begitu juga, untuk bahagian pentadbir:

<code class="jsx"><Route path="/admin" component={Backend} /></code>
Salin selepas log masuk

Dengan komponen induk ini:

<code class="jsx">const Backend = ({ match }) => (
  <div>
    <h2>Admin</h2>
    <Link to={`${match.url}/home`}>Dashboard</Link>
    <Link to={`${match.url}/users`}>Users</Link>
    <Route path={`${match.path}/home`} component={Dashboard} />
    <Route path={`${match.path}/users`} component={UserPage} />
  </div>
);</code>
Salin selepas log masuk

Pendekatan ini membolehkan anda mencipta komponen modular dan boleh guna semula yang merangkumi kedua-dua takrif laluan dan pemaparan UI untuk bahagian aplikasi anda yang berbeza.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Penghalaan Bersarang dalam Penghala Reaksi v4/v5?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!