Hướng dẫn biểu mẫu React Bootstrap

Các ví dụ và hướng dẫn sử dụng cho các kiểu điều khiển biểu mẫu, tùy chọn bố cục và các thành phần tùy chỉnh để tạo nhiều biểu mẫu khác nhau

Tổng quan

Thành phần hiển thị điều khiển biểu mẫu với kiểu dáng Bootstrap. Thành phần bao bọc một điều khiển biểu mẫu với khoảng cách phù hợp, cùng với hỗ trợ cho nhãn, văn bản trợ giúp và trạng thái xác thực. Để đảm bảo khả năng tiếp cận, hãy đặt controlId trên và sử dụng cho nhãn

import Button from 'react-bootstrap/Button';

import Form from 'react-bootstrap/Form';

Email address

We'll never share your email with anyone else.

Password

export default BasicExample;

Thành phần trực tiếp hiển thị thành phần hoặc thành phần được chỉ định khác. Nếu bạn cần truy cập vào giá trị của một không được kiểm soát, hãy đính kèm một

import Form from 'react-bootstrap/Form';

function FormDisabledInputExample() {

Disabled input

Disabled select menu

export default FormDisabledInputExample;

1 vào giá trị đó giống như cách bạn làm với một đầu vào không được kiểm soát, sau đó gọi

import Form from 'react-bootstrap/Form';

function FormDisabledInputExample() {

Disabled input

Disabled select menu

export default FormDisabledInputExample;

2 để lấy nút DOM. Sau đó, bạn có thể tương tác với nút đó như với bất kỳ đầu vào không được kiểm soát nào khác

Nếu ứng dụng của bạn chứa một số lượng lớn các nhóm biểu mẫu, chúng tôi khuyên bạn nên xây dựng một thành phần cấp cao hơn đóng gói một nhóm trường hoàn chỉnh để hiển thị nhãn, điều khiển và bất kỳ thành phần cần thiết nào khác. Chúng tôi không cung cấp tính năng vượt trội này vì thành phần của các nhóm trường đó quá cụ thể đối với một ứng dụng riêng lẻ để chấp nhận một giải pháp phù hợp với một kích cỡ tốt

biểu mẫu bị vô hiệu hóa

Thêm thuộc tính boolean

import Form from 'react-bootstrap/Form';

function FormDisabledInputExample() {

Disabled input

Disabled select menu

export default FormDisabledInputExample;

3 vào đầu vào để ngăn chặn tương tác của người dùng và làm cho nó có vẻ nhẹ hơn

Văn bản biểu mẫu bên dưới đầu vào có thể được tạo kiểu với .form-text. Nếu một phần tử cấp độ khối sẽ được sử dụng, lề trên sẽ được thêm vào để tạo khoảng cách dễ dàng từ các đầu vào ở trên

Chúng tôi sẽ không bao giờ chia sẻ email của bạn với bất kỳ ai khác

        
            
            import React from 'react';
            import { MDBInput } from 'mdb-react-ui-kit';
    
            export default function App() {
              return (
                

We'll never share your email with anyone else.

); }

Văn bản nội tuyến có thể sử dụng bất kỳ phần tử HTML nội tuyến điển hình nào (có thể là , hoặc thứ gì đó khác) mà không có gì khác ngoài lớp .form-text

Nhà phát triển web toàn diện học các mẹo mới mỗi ngày một lần. Người đam mê công nghệ web. Công cụ hack @theflutterwave. Sử dụng Bootstrap với React. Hướng dẫn với các ví dụ

Ngày 23 tháng 6 năm 2022 13 phút đọc 3735

Hướng dẫn biểu mẫu React Bootstrap

Ghi chú của biên tập viên. Bài đăng này đã được cập nhật vào ngày 23 tháng 6 năm 2022 để đảm bảo tất cả thông tin đều cập nhật và thêm một phần về

Sự phổ biến ngày càng tăng của các ứng dụng một trang trong vài năm qua đã dẫn đến một loạt các khung JavaScript, trong đó phổ biến nhất là React. Điều này trùng hợp với sự xuất hiện của các khung CSS được thiết kế để giúp các nhà phát triển xây dựng các ứng dụng web đáp ứng

Nếu React là khung JavaScript được sử dụng nhiều nhất để xây dựng các ứng dụng web, thì Bootstrap là khung CSS phổ biến nhất, cung cấp năng lượng cho hàng triệu trang web trên internet. Trong hướng dẫn này, chúng ta sẽ đi qua

    • 
      
        
          
          
          
          
          
          
          
          React App
      
          [email protected]/dist/css/bootstrap.min.css"
            integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
            crossorigin="anonymous"
          />
        
        
          
          
      0
      
      
        
          
          
          
          
          
          
          
          React App
      
          [email protected]/dist/css/bootstrap.min.css"
            integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
            crossorigin="anonymous"
          />
        
        
          
          
      1
    • 
      
        
          
          
          
          
          
          
          
          React App
      
          [email protected]/dist/css/bootstrap.min.css"
            integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
            crossorigin="anonymous"
          />
        
        
          
          
      2
    • 
      
        
          
          
          
          
          
          
          
          React App
      
          [email protected]/dist/css/bootstrap.min.css"
            integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
            crossorigin="anonymous"
          />
        
        
          
          
      3

Nếu bạn mới bắt đầu với những framework này, tôi khuyên bạn nên đọc lướt qua tài liệu chính thức về React và Bootstrap. Tôi cũng khuyến khích bạn xem video hướng dẫn toàn diện bên dưới để tìm hiểu sâu hơn

Giới thiệu sơ lược về JavaScript và CSS frameworks

Có nhiều khung JavaScript bạn có thể chọn, bao gồm Angular, React, Vue. js, Ember — danh sách tiếp tục. Nhờ những tùy chọn phong phú này, không còn cần thiết phải sử dụng thư viện DOM, chẳng hạn như jQuery, để xây dựng các ứng dụng web

Ngoài ra, nếu bạn là nhà phát triển giao diện người dùng, gần như chắc chắn bạn đã sử dụng hoặc ít nhất đã nghe nói về Bootstrap, Foundation và Bulma. Đây đều là các khung CSS đáp ứng (ưu tiên thiết bị di động) với các tính năng mạnh mẽ và tiện ích tích hợp

Như chúng tôi đã đề cập, React và Bootstrap hiện là các khung JavaScript và CSS phổ biến nhất, tương ứng. Tiếp theo, hãy xem cách thêm Bootstrap vào React

Cách thêm Bootstrap vào React

Ba cách phổ biến nhất để thêm Bootstrap vào ứng dụng React của bạn là

  • Sử dụng Bootstrap CDN
  • Nhập Bootstrap vào React dưới dạng phụ thuộc
  • Cài đặt gói React Bootstrap, chẳng hạn như
    
    
      
        
        
        
        
        
        
        
        React App
    
        [email protected]/dist/css/bootstrap.min.css"
          integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
          crossorigin="anonymous"
        />
      
      
        
        
    4 hoặc
    
    
      
        
        
        
        
        
        
        
        React App
    
        [email protected]/dist/css/bootstrap.min.css"
          integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
          crossorigin="anonymous"
        />
      
      
        
        
    5

Hãy xem xét từng chi tiết này một cách chi tiết hơn

Thêm Bootstrap vào React bằng Bootstrap CDN

Bootstrap CDN là cách dễ nhất để thêm Bootstrap vào ứng dụng React của bạn. Không cần cài đặt thêm hoặc tải xuống

Bạn sẽ chỉ phải bao gồm một liên kết đến CDN trong phần đầu của tệp nhập ứng dụng của mình. Trong một ứng dụng React điển hình được tạo bằng



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
6, ứng dụng đó sẽ nằm trong tệp


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
7

Vì chúng tôi muốn bao gồm phiên bản ổn định hiện tại của Bootstrap, liên kết của chúng tôi sẽ trông như thế này

[email protected]/dist/css/bootstrap.min.css" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">

Nếu dự án của bạn cũng yêu cầu sử dụng các thành phần JavaScript đi kèm với Bootstrap, chẳng hạn như chuyển đổi phương thức, danh sách thả xuống hoặc thanh điều hướng, chúng tôi sẽ cần liên kết tệp



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
8, được biên dịch sẵn với Popper. js

Chúng tôi có thể làm điều này bằng cách đặt thẻ



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
9 sau đây ở gần cuối trang đánh dấu mục nhập của chúng tôi, ngay trước khi đóng thẻ
npm install bootstrap
# OR
yarn add bootstrap
0


Sau khi liên kết CSS Bootstrap và CDN Javascript đi kèm, mã hoàn chỉnh cho tệp



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
7 của chúng ta sẽ như thế này



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    

Giờ đây, bạn có thể bắt đầu sử dụng các lớp Bootstrap tích hợp sẵn và các thành phần JavaScript trong các thành phần ứng dụng React của mình

Nhập Bootstrap vào React dưới dạng phụ thuộc

Nếu bạn đang sử dụng công cụ xây dựng hoặc gói mô-đun, chẳng hạn như

npm install bootstrap
# OR
yarn add bootstrap
2, thì đây sẽ là tùy chọn ưu tiên để thêm Bootstrap vào ứng dụng React của bạn. Bạn có thể dễ dàng bắt đầu cài đặt bằng cách chạy bên dưới

npm install bootstrap
# OR
yarn add bootstrap

Lệnh này sẽ cài đặt phiên bản Bootstrap mới nhất. Sau khi quá trình cài đặt hoàn tất, chúng tôi có thể đưa nó vào tệp mục nhập của ứng dụng

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";

Trong trường hợp dự án được xây dựng bằng



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
6, dự án đó sẽ nằm trong tệp
npm install bootstrap
# OR
yarn add bootstrap
4. Toàn bộ nội dung của tệp sẽ trông như thế này sau khi nhập

import React from "react";
import ReactDOM from "react-dom/client";

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";

import "./index.css";
import App from "./App";
import reportWebVitals from "./reportWebVitals";

const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  
    
  
);

// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();

Như được hiển thị trong mã ở trên, chúng tôi đã nhập cả Bootstrap CSS và tệp JavaScript được liên kết của nó. Chúng tôi cũng đảm bảo nhập Bootstrap trước tệp CSS chính của chúng tôi

npm install bootstrap
# OR
yarn add bootstrap
5 để dễ dàng thay đổi kiểu dáng mặc định của Bootstrap với tệp này như mong muốn

Khi quá trình này hoàn tất, chúng ta có thể tiếp tục và bắt đầu sử dụng các lớp Bootstrap tích hợp trong các thành phần ứng dụng React của mình

Cách thứ ba để thêm Bootstrap vào ứng dụng React là sử dụng gói đã xây dựng lại các thành phần Bootstrap được thiết kế để hoạt động như các thành phần React

Lợi ích của phương pháp này là trên thực tế, tất cả các thành phần Bootstrap đều được đóng gói dưới dạng thành phần React trong các thư viện này. Ví dụ: giờ đây, một thành phần phương thức Bootstrap đầy đủ có thể dễ dàng được nhập dưới dạng

npm install bootstrap
# OR
yarn add bootstrap
8 trong ứng dụng React của chúng tôi

Mặc dù có nhiều gói khác nhau mà bạn có thể sử dụng để cài đặt Boostrap trong React, hai gói phổ biến nhất bao gồm

npm install bootstrap
# OR
yarn add bootstrap
9 và
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
0. Cả hai gói đều là những lựa chọn tuyệt vời để sử dụng Bootstrap với các ứng dụng React và chia sẻ các đặc điểm rất giống nhau

Sử dụng các lớp và thành phần Bootstrap tích hợp

Bootstrap có thể được sử dụng trực tiếp trên các phần tử và thành phần trong ứng dụng React của bạn bằng cách áp dụng các lớp tích hợp giống như bất kỳ lớp nào khác. Để minh họa việc sử dụng các lớp và thành phần Bootstrap, hãy tạo một thành phần React của trình chuyển đổi chủ đề cơ bản


Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

Hơn 200 nghìn nhà phát triển sử dụng LogRocket để tạo ra trải nghiệm kỹ thuật số tốt hơn

Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap
Tìm hiểu thêm →


Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

Như được hiển thị trong bản trình diễn này, chúng tôi đang sử dụng một thành phần thả xuống có sẵn trong Bootstrap để triển khai trình chuyển đổi chủ đề của chúng tôi. Chúng tôi cũng đang sử dụng các lớp

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
1 tích hợp để đặt kích thước và màu sắc của nút thả xuống

Chúng tôi sẽ tiếp tục và viết mã cho thành phần trình chuyển đổi chủ đề của chúng tôi. Đảm bảo bạn đã thiết lập ứng dụng React. Trong thư mục

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
2 của bạn, hãy tạo một tệp mới có tên là
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
3 cho thành phần đó và thêm đoạn mã sau vào đó

import { useState } from "react";
const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);
  const resetTheme = () => {
    setTheme(null);
  };
  const themeClass = theme ? theme.toLowerCase() : "secondary";
  return (
    <>
      
{`${theme || "Default"} Theme`}
); }; export default ThemeSwitcher;

Trong đoạn mã trên, chúng tôi đã tạo một thành phần trình chuyển đổi chủ đề rất đơn giản bằng cách sử dụng thành phần thả xuống của Bootstrap và một vài lớp tích hợp

Sử dụng hook

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
4 của React, chúng ta đã tạo một trạng thái
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
5 và đặt giá trị ban đầu của nó thành null, cũng như xác định phương thức
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
6 để sửa đổi trạng thái này. Sau đó, chúng tôi cũng đã tạo một hàm
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
7, đặt lại giá trị của chủ đề thành null

Tiếp theo, trong phần đánh dấu thành phần của chúng tôi, chúng tôi đã hiển thị danh sách thả xuống Bootstrap với bốn mục thả xuống. Ba mục đầu tiên cho phép chúng tôi chuyển đổi giữa các chủ đề khác nhau —

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
8,
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
9 và
import React from "react";
import ReactDOM from "react-dom/client";

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";

import "./index.css";
import App from "./App";
import reportWebVitals from "./reportWebVitals";

const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  
    
  
);

// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();
0 — và mục thả xuống cuối cùng cho phép chúng tôi đặt lại giá trị chủ đề thành null bằng hàm
import React from "react";
import ReactDOM from "react-dom/client";

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";

import "./index.css";
import App from "./App";
import reportWebVitals from "./reportWebVitals";

const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  
    
  
);

// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();
1

Trong ví dụ này, chúng ta đã thấy việc sử dụng các lớp và thành phần tích hợp sẵn của Bootstrap trong ứng dụng React của chúng ta dễ dàng như thế nào. Để hiểu thêm về cách thức hoạt động của các gói React Bootstrap, hãy tạo lại ứng dụng trình chuyển đổi chủ đề của chúng ta bằng cách sử dụng các thành phần được cung cấp bởi



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4 và


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5 trong khi viết mã giới hạn

Giả sử rằng bạn đã thiết lập ứng dụng React, hãy cài đặt



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4 trong ứng dụng của chúng ta bằng lệnh bên dưới

npm install react-bootstrap bootstrap

Điều đáng nói là



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4 không được cài đặt sẵn Bootstrap; . e. , các tệp CSS và JavaScript của nó. Gói chỉ xuất Bootstrap phổ biến dưới dạng các thành phần React, đó là lý do tại sao chúng ta cũng có thể thấy Bootstrap được thêm vào lệnh cài đặt ở trên

Khi chúng tôi đã cài đặt



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4, chúng tôi có thể nhập bất kỳ thành phần nào. Ví dụ: nhập thành phần
import React from "react";
import ReactDOM from "react-dom/client";

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";

import "./index.css";
import App from "./App";
import reportWebVitals from "./reportWebVitals";

const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  
    
  
);

// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();
8 sẽ như thế này

import { Button } from 'react-bootstrap';

Để tiếp tục với ví dụ về trình chuyển đổi chủ đề của chúng tôi, hãy tạo một tệp mới có tên

// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
3 trong thư mục
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
2 của dự án của chúng tôi và đặt nội dung sau vào đó

import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;

Trong đoạn mã trên, chúng tôi đã cố gắng sao chép ví dụ ban đầu của mình nhiều nhất có thể bằng cách sử dụng



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4

Chúng tôi đã nhập khẩu ba thành phần từ gói



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4; . Và giống như chúng tôi đã làm trước đây, chúng tôi đã sử dụng móc nối
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
4 để tạo trạng thái chủ đề của mình và xác định một hàm đặt giá trị của
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
5 thành
import { useState } from "react";
const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);
  const resetTheme = () => {
    setTheme(null);
  };
  const themeClass = theme ? theme.toLowerCase() : "secondary";
  return (
    <>
      
{`${theme || "Default"} Theme`}
); }; export default ThemeSwitcher;
8

Cuối cùng, chúng tôi sẽ sửa đổi tệp

import { useState } from "react";
const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);
  const resetTheme = () => {
    setTheme(null);
  };
  const themeClass = theme ? theme.toLowerCase() : "secondary";
  return (
    <>
      
{`${theme || "Default"} Theme`}
); }; export default ThemeSwitcher;
9 để trông giống như đoạn mã sau


0

Thay đổi duy nhất mà chúng tôi đã thực hiện đối với tệp này là loại bỏ trang bắt đầu



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
6 và làm cho nó hiển thị thành phần
npm install react-bootstrap bootstrap
1 của chúng tôi thay vào đó

Nếu chúng tôi chạy ứng dụng ngay bây giờ bằng lệnh

npm install react-bootstrap bootstrap
2 hoặc
npm install react-bootstrap bootstrap
3, ứng dụng của chúng tôi sẽ bắt đầu trên cổng
npm install react-bootstrap bootstrap
4 và sẽ trông giống như bản demo sau

Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

Gói



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5 khá giống với gói


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4, với những khác biệt nhỏ ở những thứ như tên thành phần và giá đỡ. Tuy nhiên,


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4 cũ hơn một chút so với


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5, điều này có thể đã góp phần làm cho phạm vi áp dụng của nó rộng hơn

Chúng ta có thể dễ dàng thêm



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5 vào dự án phản ứng của mình bằng lệnh bên dưới


1

Mã cho thành phần

npm install react-bootstrap bootstrap
1 của chúng ta sẽ như thế này


2

Khi so sánh cả hai tệp mã từ ví dụ

import { Button } from 'react-bootstrap';
2 và


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4, đặc biệt là hành động kích hoạt chuyển đổi thả xuống của chúng tôi, chúng ta có thể thấy rằng


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5 tận dụng React Hook để sử dụng các tính năng của React nhiều hơn, trong khi


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4 phụ thuộc nhiều hơn vào thuộc tính thành phần

Nếu chúng tôi chạy ứng dụng ngay bây giờ bằng lệnh

npm install react-bootstrap bootstrap
2 hoặc
npm install react-bootstrap bootstrap
3, ứng dụng của chúng tôi sẽ bắt đầu trên cổng
npm install react-bootstrap bootstrap
4 và sẽ trông giống như bản demo sau

Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

Tạo một ứng dụng React chi tiết hơn với Bootstrap

Hãy đẩy mạnh điều này hơn một chút để tạo một ứng dụng với một số chi tiết hơn. Chúng tôi sẽ cố gắng sử dụng càng nhiều lớp và thành phần Bootstrap càng tốt. Chúng tôi cũng sẽ sử dụng



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5 để thêm Bootstrap vào React. Đây là kết quả cuối cùng của chúng ta sẽ như thế nào

Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

Hãy bắt đầu bằng cách tạo một ứng dụng mới với



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
6


3

Tiếp theo, hãy tiếp tục và cài đặt các phụ thuộc như sau


4

Lưu ý ở đây rằng chúng tôi đã cài đặt

import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
1 làm phụ thuộc. Axios là ứng dụng khách HTTP dựa trên lời hứa dành cho trình duyệt và Node. js. Nó sẽ cho phép chúng tôi tìm nạp các bài đăng từ API Bacon Ipsum JSON

Hãy sửa đổi một chút đối với tệp

npm install bootstrap
# OR
yarn add bootstrap
4 để bao gồm các tệp CSS và JavaScript được rút gọn trong Bootstrap. Nó sẽ giống như đoạn mã sau


5

Tiếp theo, chúng tôi sẽ tạo một thư mục mới có tên

import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
3 bên trong thư mục
// Bootstrap CSS
import "bootstrap/dist/css/bootstrap.min.css";
// Bootstrap Bundle JS
import "bootstrap/dist/js/bootstrap.bundle.min";
2 của dự án của chúng tôi. Trong thư mục
import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
3 mới này, hãy tạo một tệp mới có tên là
import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
6 và cập nhật nó với nội dung sau


6

Thành phần chúng ta vừa tạo trong đoạn mã trên là thành phần

import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
7, chứa menu điều hướng. Tiếp theo, chúng ta sẽ tạo một tệp mới có tên là
import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
8 — cũng nằm trong thư mục
import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
3 — với nội dung như sau


7

Khi đã xong, hãy tạo một tệp mới có tên


00 trong thư mục thành phần và thêm đoạn mã sau vào đó


8

Trong đoạn mã trên, chúng tôi đã tạo một thành phần


01 hiển thị một bài đăng trên trang. Chúng tôi đã khởi tạo trạng thái của thành phần bằng cách đặt thuộc tính post thành
import { useState } from "react";
const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);
  const resetTheme = () => {
    setTheme(null);
  };
  const themeClass = theme ? theme.toLowerCase() : "secondary";
  return (
    <>
      
{`${theme || "Default"} Theme`}
); }; export default ThemeSwitcher;
8

Sau khi thành phần được gắn kết, chúng tôi đã sử dụng móc nối


03 và Axios để truy xuất một bài đăng ngẫu nhiên gồm bốn đoạn từ API Bacon Ipsum JSON và thay đổi trường bài đăng của chúng tôi thành dữ liệu được trả về từ API này

Cuối cùng, sửa đổi tệp

import { useState } from "react";
const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);
  const resetTheme = () => {
    setTheme(null);
  };
  const themeClass = theme ? theme.toLowerCase() : "secondary";
  return (
    <>
      
{`${theme || "Default"} Theme`}
); }; export default ThemeSwitcher;
9 để trông giống như đoạn mã sau


9

Trong đoạn mã trên, chúng tôi chỉ đơn giản bao gồm các thành phần

import { useState } from "react";
import { Button, ButtonGroup, Dropdown } from "react-bootstrap";

const ThemeSwitcher = () => {
  const [theme, setTheme] = useState(null);

  const resetTheme = () => {
    setTheme(null);
  };

  return (
    
setTheme("primary")}> Primary setTheme("danger")}> Danger setTheme("success")}> Success Default Theme
); }; export default ThemeSwitcher;
7,

06 và

01 trong thành phần

08. Lưu ý cách chúng tôi sử dụng một vài lớp tiện ích đáp ứng do Bootstrap cung cấp để điều chỉnh ứng dụng của chúng tôi với các kích thước màn hình khác nhau

Nếu bạn chạy ứng dụng ngay bây giờ bằng lệnh

npm install react-bootstrap bootstrap
2 hoặc
npm install react-bootstrap bootstrap
3, thì ứng dụng của bạn sẽ bắt đầu trên cổng 3000 và trông giống hệt như ảnh chụp màn hình mà chúng ta đã thấy trước đó

Cách khắc phục sự cố Bootstrap không hoạt động trong React

Lý do duy nhất Bootstrap có thể không hoạt động bình thường trong ứng dụng React của bạn là nếu bạn chưa liên kết nó đúng cách

Nếu bạn đang sử dụng Bootstrap CDN, hãy kiểm tra kỹ xem URL CDN có hợp lệ không và URL đó có được thêm vào bằng cách sử dụng thẻ


11 trong phần đầu của trang đăng ký của bạn không

Nếu bạn đang sử dụng gói React Bootstrap, hãy đảm bảo rằng bạn đã cài đặt gói đó đúng cách và nhập gói đó vào trang nhập ứng dụng của mình,

Phần kết luận

Trong hướng dẫn này, chúng tôi đã khám phá một số cách khác nhau để chúng tôi có thể tích hợp Bootstrap với các ứng dụng React của mình. Chúng tôi cũng đã thấy cách chúng tôi có thể sử dụng hai trong số các thư viện React Bootstrap phổ biến nhất, đó là



  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
4 và


  
    
    
    
    
    
    
    
    React App

    [email protected]/dist/css/bootstrap.min.css"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
  
  
    
    
5

Chúng tôi chỉ sử dụng một vài thành phần Bootstrap trong hướng dẫn này, chẳng hạn như cảnh báo, huy hiệu, danh sách thả xuống, thanh điều hướng, điều hướng, biểu mẫu, nút, thẻ, v.v. Vẫn còn một số thành phần Bootstrap mà bạn có thể thử nghiệm, chẳng hạn như bảng, phương thức, chú giải công cụ, băng chuyền, jumbotron, phân trang, tab, v.v.

Bạn có thể kiểm tra tài liệu về các gói mà chúng tôi đã sử dụng trong hướng dẫn này để tìm hiểu thêm các cách sử dụng chúng. Mã nguồn cho tất cả các ứng dụng demo trong hướng dẫn này có thể được tìm thấy trên GitHub

Đăng NhậpTên Lửa. Khả năng hiển thị đầy đủ vào các ứng dụng React sản xuất của bạn

Gỡ lỗi ứng dụng React có thể khó khăn, đặc biệt khi người dùng gặp sự cố khó tái tạo. Nếu bạn quan tâm đến việc giám sát và theo dõi trạng thái Redux, tự động hiển thị các lỗi JavaScript và theo dõi các yêu cầu mạng chậm và thời gian tải thành phần, hãy thử LogRocket.
Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

LogRocket kết hợp tính năng phát lại phiên, phân tích sản phẩm và theo dõi lỗi – trao quyền cho các nhóm phần mềm để tạo ra trải nghiệm sản phẩm di động và web lý tưởng. Điều đó có ý nghĩa gì đối với bạn?

Thay vì đoán tại sao xảy ra lỗi hoặc yêu cầu người dùng chụp ảnh màn hình và kết xuất nhật ký, LogRocket cho phép bạn phát lại các sự cố như thể chúng đã xảy ra trong trình duyệt của chính bạn để nhanh chóng hiểu điều gì đã xảy ra.

Không còn cảnh báo ồn ào. Theo dõi lỗi thông minh cho phép bạn phân loại và phân loại các vấn đề, sau đó học hỏi từ điều này. Nhận thông báo về các sự cố có ảnh hưởng đến người dùng, không phải thông báo sai. Ít cảnh báo hơn, nhiều tín hiệu hữu ích hơn

Gói phần mềm trung gian LogRocket Redux thêm một lớp khả năng hiển thị bổ sung vào các phiên người dùng của bạn. LogRocket ghi lại tất cả các hành động và trạng thái từ các cửa hàng Redux của bạn

Hiện đại hóa cách bạn gỡ lỗi ứng dụng React của mình — bắt đầu theo dõi miễn phí

Chia sẻ cái này

  • Twitter
  • reddit
  • LinkedIn
  • Facebook

Hướng dẫn biểu mẫu React Bootstrap
Hướng dẫn biểu mẫu React Bootstrap

Vui mừng Chinda Theo dõi Nhà phát triển web toàn diện đang học các mẹo mới mỗi ngày một lần. Người đam mê công nghệ web. Công cụ hack @theflutterwave.

  • Chưa được phân loại
  • #phản ứng

« Thời điểm và cách chọn giữa truy vấn phương tiện và truy vấn vùng chứa

Hiệu suất trong Unity.


14,

15 và

16 so với. coroutines, Hệ thống công việc C# và trình biên dịch liên tục »