/ / Cách xây dựng ứng dụng một trang bằng React Router

Cách xây dựng ứng dụng một trang bằng React Router

a generic website wordpress theme

Ứng dụng một trang (SPA) là một trang web hoặc ứng dụng web tự động viết lại một trang web hiện có với thông tin mới từ máy chủ web.


Trong ứng dụng React, các thành phần truy xuất nội dung trang web và hiển thị nội dung đó thành một tệp HTML duy nhất trong dự án của bạn.

React Router giúp bạn điều hướng đến thành phần bạn chọn và hiển thị nó trong tệp HTML. Để sử dụng nó, bạn cần biết cách thiết lập và tích hợp Bộ định tuyến React với ứng dụng React của mình.


Cách cài đặt bộ định tuyến phản ứng

Để cài đặt React Router vào dự án React của bạn bằng npm, trình quản lý gói JavaScript, hãy chạy lệnh sau trong thư mục dự án của bạn:

 npm i react-router-dom

Ngoài ra, bạn có thể tải xuống gói bằng Yarn, một trình quản lý gói cho phép bạn cài đặt các gói thư viện ngoại tuyến.

Để cài đặt React Router bằng Yarn, hãy chạy lệnh này:

 yarn add react-router-dom@6

Thiết lập bộ định tuyến phản ứng

Để định cấu hình Bộ định tuyến React và cung cấp nó trong ứng dụng của bạn, hãy nhập Trình duyệtRouter từ Reac-router-dom bên trong của bạn index.js tệp, sau đó bọc thành phần ứng dụng của bạn trong Trình duyệtRouter yếu tố:

 import React from 'react';
import ReactDOM from 'react-dom/client';
import App from './App';
import { BrowserRouter } from 'react-router-dom';

const root = ReactDOM.createRoot( document.getElementById('root') );

root.render(
  <BrowserRouter>
    <App />
  </BrowserRouter>
);

Gói thành phần ứng dụng trong Trình duyệtRouter phần tử cung cấp cho toàn bộ ứng dụng quyền truy cập đầy đủ vào các khả năng của Bộ định tuyến.

Định tuyến đến các thành phần khác

Sau khi thiết lập Bộ định tuyến trong ứng dụng của mình, bạn nên tiếp tục và tạo các thành phần ứng dụng, định tuyến và kết xuất chúng. Đoạn mã sau nhập và tạo các thành phần có tên “Trang chủ”, “Giới thiệu” và “Blog”. Mã này cũng nhập Tuyến đườngtuyến đường yếu tố từ phản ứng-bộ định tuyến-dom.

Bạn sẽ xác định Tuyến đường của mình bên trong Ứng dụng thành phần:

 import { Routes, Route } from 'react-router-dom';
import Home from './Home';
import About from './About';
import Blog from './Blog';

function App() {
    return (
      <Routes>
        <Route path="https://www.smartreviewaz.com/" element={ <Home /> } />
        <Route path='/about' element={ <About /> } />
        <Route path='/blog' element={ <Blog /> }/>
      </Routes>
    )
}

export default App;

Các Ứng dụng thành phần là thành phần chính hiển thị tất cả mã bạn đã viết trong các thành phần khác của mình.

Các tuyến đường phần tử là phần tử cha bao bọc các tuyến riêng lẻ mà bạn tạo trong thành phần ứng dụng của mình. Các Tuyến đường phần tử tạo một tuyến đường duy nhất. Nó có hai thuộc tính chống đỡ: a đường dẫn và một yếu tố.

Các đường dẫn thuộc tính xác định đường dẫn URL của thành phần dự định. Tuyến đầu tiên trong khối mã trên sử dụng dấu gạch chéo ngược (/) làm đường dẫn. Đây là route đặc biệt mà React sẽ render đầu tiên, nên Nhà thành phần hiển thị khi bạn chạy ứng dụng của mình. Đừng nhầm lẫn hệ thống này với việc triển khai kết xuất có điều kiện trong Thành phần phản ứng của bạn. bạn có thể cho cái này đường dẫn thuộc tính bất kỳ tên nào bạn thích.

Các yếu tố thuộc tính xác định thành phần mà Tuyến đường sẽ kết xuất.

Các liên kết thành phần là thành phần Bộ định tuyến React được sử dụng để điều hướng các tuyến khác nhau. Các thành phần này truy cập các tuyến đường khác nhau mà bạn đã tạo.

Ví dụ:

 import { Link } from 'react-router-dom';

function Home() {
    return (
      <div>
        <Link to='/about'>About page</Link>
        <Link to='/blog'>Blog page</Link>
        <h1>This is the Home Page<h1/>
      </div>
    )
}

export default Home;

Các liên kết thành phần gần giống với thẻ neo HTML , nó chỉ sử dụng một thuộc tính có tên là “to” thay vì “href”. Các liên kết thành phần điều hướng đến Tuyến đường với tên đường dẫn tương ứng làm thuộc tính của nó và hiển thị thành phần của Tuyến đường.

Định tuyến lồng nhau và cách thực hiện

Bộ định tuyến React hỗ trợ định tuyến lồng nhau, cho phép bạn bọc nhiều Tuyến vào một Tuyến duy nhất. Điều này chủ yếu được sử dụng khi có một số điểm tương đồng trong đường dẫn URL của các Tuyến.

Khi bạn đã tạo các thành phần mà bạn muốn định tuyến, bạn sẽ phát triển các Tuyến riêng lẻ cho từng thành phần trong phần ứng dụng thành phần.

Ví dụ:

 import { Routes, Route } from 'react-router-dom'; 
import Articles from './Articles';
import NewArticle from './NewArticle';
import ArticleOne from './ArticleOne';

function App() {
    return (
      <Routes>
        <Route path='/article' element={ <Articles /> }/>
        <Route path='/article/new' element={ <NewArticle /> }/>
        <Route path='/article/1' element={ <ArticleOne /> }/>
      </Routes>
    )
}

export default App;

Khối mã ở trên nhập và định tuyến các thành phần đã tạo Bài viết, Bài báo mớiĐiều Một. Có một số điểm tương đồng trong đường dẫn URL giữa ba tuyến đường.

Các Bài báo mới Tên đường dẫn của tuyến đường bắt đầu giống như Bài viết Tên đường dẫn của định tuyến, có thêm dấu gạch chéo ngược (/) và từ “mới”, tức là (/ mới). Sự khác biệt duy nhất giữa tên đường dẫn của Bài viết Tuyến đường và Điều Một Lộ trình là dấu gạch chéo (/1) ở cuối Điều Một tên đường dẫn của thành phần.

Bạn có thể lồng ba Tuyến thay vì để chúng ở trạng thái hiện tại.

Như vậy:

 import { Routes, Route } from 'react-router-dom';
import Articles from './Articles';
import NewArticle from './NewArticle';
import ArticleOne from './ArticleOne';

function App() {
    return (
      <Routes>
        <Route path='/article'>
          <Route index element={ <Articles /> }/>
          <Route path='/article/new' element={ <NewArticle /> }/>
          <Route path='/article/1' element={ <ArticleOne /> }/>
        </Route>
      </Routes>
    )
}

export default App;

Bạn đã gói ba Lộ trình riêng lẻ trong một Tuyến đường yếu tố. Lưu ý rằng phụ huynh Tuyến đường phần tử chỉ có đường dẫn thuộc tính và không yếu tố thuộc tính xác định thành phần để kết xuất. Các mục lục thuộc tính trong con đầu tiên Tuyến đường phần tử xác định rằng điều này Tuyến đường hiển thị khi bạn điều hướng đến đường dẫn URL của trang gốc Tuyến đường.

Để làm cho mã của bạn tốt hơn và dễ bảo trì hơn, bạn nên xác định các Tuyến của mình trong một thành phần và nhập nó vào ứng dụng thành phần để sử dụng.

Ví dụ:

 import { Routes, Route } from 'react-router-dom';
import Articles from './Articles';
import NewArticle from './NewArticle';
import ArticleOne from './ArticleOne';

function ArticleRoutes() {
    return (
      <Routes>
        <Route index element={ <Articles /> }/>
        <Route path='/article/new' element={ <NewArticle /> }/>
        <Route path='/article/1' element={ <ArticleOne /> }/>
      </Routes>
    )
}

export default ArticleRoutes;

Thành phần trong khối mã ở trên chứa các Tuyến lồng nhau trước đây có trong thành phần ứng dụng. Sau khi tạo thành phần, bạn nên nhập nó vào ứng dụng thành phần và định tuyến nó bằng cách sử dụng một Tuyến đường yếu tố.

Ví dụ:

 import { Routes, Route } from 'react-router-dom';
import ArticleRoutes from './ArticleRoutes';

function App() {
    return (
      <Routes>
        <Route path='/article/*' element={ <ArticleRoutes /> }>
      </Routes>
    )
}

export default App;

trong trận chung kết Tuyến đường thành phần, các ký hiệu dấu gạch chéo ngược và dấu hoa thị được thêm vào ở cuối tên đường dẫn của Tuyến đảm bảo rằng tên đường dẫn đó tương ứng với bất kỳ tên đường dẫn nào bắt đầu bằng (/bài báo).

Có nhiều hơn để React Router

Bây giờ bạn đã quen với những kiến ​​thức cơ bản về cách xây dựng các ứng dụng một trang trong React.js bằng cách sử dụng Bộ định tuyến React.

Có nhiều tính năng khác có sẵn trong thư viện Bộ định tuyến React giúp trải nghiệm của nhà phát triển năng động hơn khi xây dựng các ứng dụng web.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *