Nội dung
26.11. React key prop React useRef bị lưu dữ liệu cũ Giải thích & fix bằng key prop tuhoc.cc
Trong video này, tuhoc.cc sẽ cùng bạn phân tích một vấn đề rất phổ biến nhưng cũng rất dễ gây nhầm lẫn khi học React, đặc biệt là với những bạn đã biết useRef, useState và đang bắt đầu tách component trong dự án thực tế. Đó là hiện tượng dữ liệu bị giữ lại không mong muốn dù component đã render lại, dẫn tới hành vi giao diện sai logic so với kỳ vọng của người lập trình. Thông qua một ví dụ quiz app thực tế, video giải thích rõ vì sao bộ câu trả lời chỉ được xáo trộn đúng một lần, dù người dùng chuyển sang câu hỏi mới. Nguyên nhân không nằm ở thuật toán xáo trộn, cũng không phải do React bị lỗi, mà đến từ cách useRef hoạt động trong vòng đời component. Bạn sẽ hiểu rằng useRef không bị reset khi component render lại, và vì vậy giá trị bên trong ref sẽ được giữ nguyên cho đến khi component bị unmount hoàn toàn. Từ vấn đề đó, video dẫn dắt người học tới một khái niệm rất quan trọng nhưng thường bị hiểu sai, đó là key prop trong React. Key không chỉ dùng để loại bỏ cảnh báo khi render danh sách, mà còn đóng vai trò giúp React xác định identity của component giữa các lần render. Khi key thay đổi, React sẽ unmount instance cũ và mount lại instance mới, kéo theo toàn bộ state và effect được reset. Đây chính là chìa khóa để giải quyết bài toán reset timer, reset đáp án và làm cho ứng dụng hoạt động đúng với mong muốn. Video cũng làm rõ phạm vi ảnh hưởng của key prop, nhấn mạnh rằng key chỉ có ý nghĩa giữa các phần tử cùng cấp, và việc trùng key giữa các cấp khác nhau không gây vấn đề. Điều này giúp người học tránh được nhiều hiểu nhầm phổ biến khi bắt đầu sử dụng key trong các component phức tạp. Ngoài ra, bài giảng còn giúp bạn phân biệt rõ giữa render lại và remount component, hai khái niệm thường bị đánh đồng với nhau. Đây là nền tảng rất quan trọng để hiểu sâu React, đặc biệt khi làm việc với hook, effect, timer hoặc các logic phụ thuộc vào vòng đời component. Video này phù hợp với những bạn đang học React ở mức cơ bản đến trung cấp, đã biết hook nhưng chưa thực sự hiểu sâu về cách React quản lý component. Nếu bạn từng gặp cảm giác code đúng nhưng ứng dụng vẫn hoạt động sai, hoặc từng bối rối khi useRef không reset như mong đợi, thì đây là bài học bạn không nên bỏ qua. tuhoc.cc mong rằng sau video này, bạn không chỉ biết cách sửa lỗi, mà còn hiểu rõ bản chất để tự tin áp dụng key prop và hook một cách đúng đắn trong các dự án React thực tế.
Học bài này kèm ghi chú theo giây video
Ghi chú gắn đúng giây video, click là nhảy về vị trí đó — kèm tiến độ học, XP và bảng xếp hạng. Khoá này hoàn toàn miễn phí.
Nội dung khoá React JS từ cơ bản đến nâng cao - reactjs full course for free
Nội dung
- 1. React JS là gì? Học React từ cơ bản đến nâng cao cho người mới - React JS Gà Lại Lập Trình10 phút
- 2. JavaScript ES6 - Modules Tìm hiểu Named Export, Default Export - Giải thích chi tiết30 phút
- 3. Hướng Dẫn Tạo Dự Án React CodeSandbox vs Local Project using VScode - React Cho Người Mới12 phút
- 4. JS Function Review: Nhìn lại kiến thức cơ bản về Function trong JavaScript12 phút
- 5. JS Function Review: Arrow Function - Những điều bạn cần biết10 phút
- 6.JS OOP Review: Ôn tập, làm chủ Objects và Classes JavaScript nhanh chóng12 phút
- 7. JS Array Review: Ôn tập, review array JavaScript , những điểm cần lưu ý12 phút
- 8. Destructuring JavaScript - Cách sử dụng Destructuring Arrays và Objects21 phút
- 9. destructuring function - Ứng dụng Destructuring với đối tượng trong hàm JavaScript14 phút
- 10. Review Javascript Spread Operator - Làm việc với mảng và object trong JSbằng Spread Operator9 phút
- 11. React js - Cách Sử Dụng JSX Trong React Tất Tần Tật Cho Người Mới Bắt Đầu12 phút
- 12. React js - Component trong React - Tạo ứng dụng React cơ bản nhanh chóng10 phút
- 13.1 React js _ Render Hình Ảnh, Dữ Liệu động - Cách Sử Dụng JSX để Hiển Thị Dữ Liệu Linh Hoạt12 phút
- 13.2 React js (tiếp) Render Hình Ảnh, Dữ Liệu động - Cách Sử Dụng JSX để Hiển Thị Dữ Liệu Linh Hoạt8 phút
- 14.1 React js _ Props Trong React Là Gì_ Hướng Dẫn Chi Tiết Cho Người Mới - React js tuhoc.cc21 phút
- 14.2 React js _ Tối ưu hoá code với Destructuring và Spread Operator - hướng dẫn chi tiết9 phút
- 14.3 React js _ Cách chia nhỏ dự án lập trình lớn để dễ quản lý và phát triển4 phút
- 14.4 React js _ Cách tối ưu Component trong React – tuhoc.cc1 phút
- 14.5 React js _ props.children_ Cách hoạt động và ứng dụng thực tế7 phút
- 14.6 React js - React onClick - Hướng Dẫn Cơ Bản Cho Người Mới Bắt Đầu bởi tuhoc.cc5 phút
- 14.7 React js - Truyền hàm sự kiện từ Component cha vào Component con7 phút
- 14.8 React js - Xử Lý Sự Kiện Trong React Dễ Dàng Hơn Với Arrow Function8 phút
- 14.9 State React từ A-Z - Tìm hiểu về State và hook trong reactjs22 phút
- 14.10 Bài tập React 01 - Ứng Dụng React useState- Hiển Thị Lời Chào Dựa Trên Thời Gian11 phút
- 14.11 React js - Ứng Dụng State Để Hiển Thị Dữ Liệu Thực - react js by Gà Lại Lập Trình10 phút
- 14.12 React js -Hiển Thị Nội Dung Theo Điều Kiện Trong React - useState và Ternary16 phút
- 14.13 Bài tập React js 02 - Hiển Thị Hộp Cảnh Báo Có sử dụng useState Reactjs9 phút
- 14.14 React js - Thêm Class Active Cho button - Cách Làm Nút Bấm Sáng Khi Được Chọn5 phút
- 14.15 Bài tập React 03 -Học React JS qua bài tập thực tế Thêm class active cho phần tử6 phút
- 38. Array map method - Giải thích map() trong JavaScript qua ví dụ dễ hiểu22 phút
- 14.16 map() in react - Tối ưu hóa mảng trong React Tránh lỗi phổ biến khi dùng chỉ số index9 phút
- 14.17 Bài tập react 04 - Hiển thị danh sách dùng map in react8 phút
- 14.18 React Optimization Tối ưu code với Section Component9 phút
- 14.19 Forwarding Props trong React là gì Cách sử dụng ...props6 phút
- 14.20 Tạo component Tabs Menu - Tối ưu hoá tăng hiệu quả và tái sử dụng trong ReactJS8 phút
- 14.21 React Tips Tối ưu Tabs Menu cho ứng dụng lớn - Học React từ cơ bản đến nâng cao6 phút
- 14.22 Default Props Trong React Hướng Dẫn Từng Bước - Hướng Dẫn React Cho Người Mới2 phút
- 14.23 Tối ưu hóa App.js với các Component riêng - xây dựng App.js tối giản trong React11 phút
- 15. Sai Lầm Khi sử dụng useState Trong React – Bạn Có Đang Mắc Phải10 phút
- 16.1 React State_ Hiểu Rõ One-Way Binding & Two-Way Binding - react js gà lại lập trình14 phút
- 16.2 React State Two-Way Binding với nhiều trường input19 phút
- 17.1 React CSS 01 - Dùng CSS toàn cục với Import CSS - React CSS cơ bản7 phút
- 17.2 React CSS 02 - Import CSS trong react buổi 2 - Thêm nhiều class đồng thời vào phần tử9 phút
- 17.3 React CSS - Inline styling in Reactjs - CSS Inline trong React - Hướng dẫn React cho người mới9 phút
- 17.4 CSS Module trong React là gì Hướng dẫn chi tiết cho người mới bắt đầu7 phút
- 17.5 Styled Components - CSS-in-JS Trong 10 Phút Với Ví Dụ Dễ Hiểu10 phút
- 17.6 Styled Components - Dynamic & Conditional Styling - Cách áp dụng điều kiện CSS18 phút
- 17.7 Styled Components - Pseudo Selectors, Nested Rules & Media Queries10 phút
- 18.1 Refs & Portals trong React -Giới thiệu dự án thực hành refs - protals react js, Ôn tập useState19 phút
- 18.2 React useRef_ Làm Chủ .current để Điều Khiển Component8 phút
- 18.3 So sánh useRef và useState_ Khi nào dùng cái nào6 phút
- 18.4 Add Component Timer - Refs & Portals trong React - Dự án thực hành react refs và protals5 phút
- 18.5 Thêm useState Timer- Refs & Portals trong React - Dự án thực hành react refs và protals10 phút
- 18.6 Sử dụng ref để xử lý Stop Timer - Refs & Portals trong React7 phút
- 18.7 Thêm Modal Popup – Kết hợp useRef với dialog - Refs & Portals trong React12 phút
- 18.8 useImperativeHandle Hook - Nâng cấp logic với useImperativeHandle trong react js8 phút
- 18.9 Hiện modal khi click stop - Dự án thực hành refs, protals react js dễ hiểu cho người mới10 phút
- 18.10 Xử lý thông báo thắng thua - Dự án thực hành refs, protals react js tuhoc.cc10 phút
- 18.11 Hiển thị kết quả – Tính điểm khi dừng đúng thời gian - Dự án thực hành refs, protals react js4 phút
- 18.12 Giải Thích Portals Trong React_ Dễ Hiểu & Ứng Dụng Thực Tế5 phút
- 19. useReducer trong React_ Cách quản lý state phức tạp với useReducer26 phút
- 20.1 useContext React – Hạn chế của useState với cách truyền props drilling15 phút
- 20.2 useContext React – Giải pháp tối ưu cho truyền dữ liệu nhiều tầng tránh props drilling12 phút
- 21.1 React useEffect Là Gì_ Hướng Dẫn Toàn Tập Cho Người Mới Bắt Đầu17 phút
- 21.2 Làm chủ useEffect trong ReactJS_ Thực hành call API và phân tích kết quả14 phút
- 21.3 ReactJS useEffect_ Cách Unmount Component & Cleanup setInterval_setTimeout Trong React17 phút
- 21.4 Hướng dẫn useEffect với event DOM_ Resize, Keydown trong ReactJS9 phút
- 22. ReactJS useLayoutEffect_ Hiểu Rõ Khác Biệt với useEffect Qua Ví Dụ Thực Tế6 phút
- 23. React.memo giải thích dễ hiểu – Khi nào nên dùng và lưu ý cho người mới10 phút
- 24. React.memo & useCallback_ Cách Giảm Số Lần Render Component Con Hiệu Quả7 phút
- 25 React useMemo Cách tối ưu component với phép tính phức tạp10 phút
- 26.1. Tự Học ReactJS Qua Dự Án – Hướng dẫn làm App trắc nghiệm (Quiz App)11 phút
- 26.2. React JS Quiz App - Hiển thị câu hỏi trắc nghiệm và xử lý đáp án - component Quiz20 phút
- 26.3. React JS Quiz App - Giải thích thuật toán shuffle trước khi áp dụng vào Quiz App18 phút
- 26.4. React JS Quiz App - Thêm màn hình kết thúc và xáo trộn câu trả lời Quiz App12 phút
- 26.5. React JS Quiz App - Thêm thanh tiến trình vào Quiz App Progress Bar15 phút
- 26.6. React JS Quiz App - Cleanup function ngăn lỗi logic và leak bộ nhớ4 phút
- 26.7. React JS Quiz App - Hiểu useCallback qua dự án Quiz App17 phút
- 26.8. React JS Quiz App - Giải thích Key props qua ví dụ Quiz App9 phút
- 26.9. React JS Quiz App - Xử lý đổi màu đáp án bằng state28 phút
- 26.10. Ví dụ thực tế về useRef Ghi nhớ dữ liệu không render lại tuhoc.cc11 phút
- ▸ 26.11. React key prop React useRef bị lưu dữ liệu cũ Giải thích & fix bằng key prop tuhoc.cc16 phút
- 26.12. React component Tách và gộp component React xử lý lỗi trùng key15 phút
- 26.13. React Refactor Quiz Đặt lại trách nhiệm component - tuhoc.cc32 phút
- 26.14. Vì Sao Progress Trong React Chạy Sai Thời Gian tuhoc.cc21 phút
- 26.15. React JS Tạo Component Summary - Trang Tổng Kết Kết Quả32 phút