Please enable JavaScript.
Coggle requires JavaScript to display documents.
ReactJs - Coggle Diagram
ReactJs
Khái niệm cơ bản
-
JSX
-
JSX cho phép chúng ta viết các HTML bằng JavaScript. Để trình duyệt có thể hiểu và chạy được JSX thì trình compiler Babel sẽ transpiler nó thành JavaScript tương thích trong các trình duyệt
Component
Mỗi component là một đoạn mã nhỏ chịu trách nhiệm hiển thị hoặc xử lý một phần trên trang web và có thể được tái sử dụng ở nhiều chỗ khác nhau (Khuyến khích tên component được viết theo kiểu PascalCase)
Class Component
Là một class được kế thừa từ React.Component và Class component có các state và lifecycle riêng. hình ảnh
-
-
-
-
Function component có thể được render nhanh hơn class component vì chúng không cần khởi tạo các trạng thái hoặc vòng đời
Props và State
Props
Các props được sử dụng để truyền dữ liệu hoặc event từ component này sang component khác. Props là bất biến, có nghĩa là giá trị của chúng không thể được thay đổi
-
-
Real DOM và Virtual DOM
Real DOM
Cầu trúc cây các đối tượng HTML thực tế mà trình duyệt sử dụng để hiến thị giao diện người dùng. Khi có thay đổi nào trong giao diện người dùng, trình duyệt phải tài lại toàn bộ DOM và cập nhật lại giao diện người dùng
Virtual DOM
cấu trúc dữ liệu trung gian trong bộ nhớ của trình duyệt, được sử dụng để đại diện cho cầu trúc DOM thực tế. Khi có thay đổi nào trong giao diện người dùng, React tạo ra một Virtual DOM mới, so sánh với Virtual DOM cũ và xác định các thay đổi cần được thực hiện trên Real DOM. Sau đó, React chỉ cập nhật các thành phần thay đổi thực sự trên Real DOM
Sự khác biệt
Tốc độ: Virtual DOM được tạo và cập nhật nhanh hơn Real DOM, giúp tăng hiệu suất và giảm thời gian đáp ứng của ứng dụng.
Định dạng: Real DOM là một cầu trúc cây các đổi tượng HTML thực tế, trong khi Virtual DOM là một đổi tượng JavaScript trừu tượng được lưu trữ trong bộ nhớ của trình duyệt.
Bộ nhớ: Virtual DOM được lưu trữ trong bộ nhớ của trình duyệt, điều này giúp giảm tải lên máy chủ và tổi ưu hóa việc sử dụng bộ nhớ.
Giới thiệu
-
Các tính năng
-
JSX: ReactJS sử dụng JSX (JavaScript XML) để viết mã HTML trực tiếp trong mã JavaScript. JSX giúp dễ dàng xây dựng các thành phần UI và tái sử dụng chúng.
-
Server-side rendering: ReactJS cho phép render trên server-side, giúp các trang web được tối ưu hóa cho SEO tốt hơn.
-
React Hooks
useState
Được sử dụng để thêm state vào các component functional. Nó có một cặp giá trị, trong đó giá trị đầu tiên là state hiện tại và giá trị thứ hai là một hàm để cập nhật state.
VD: const [count, setCount] = useState(0);
useEffect
Được sử dụng để thực hiện các side effect trong functional component như gọi API,...
-
useCallback
Được sử dụng để tránh việc tạo lại hàm callback mới mỗi khi component render lại, giúp tối ưu hiệu suất.
-