UseCallback và UseMemo?

1. UseCallback() là gì? Khái niệm: Là một react hooks giúp mình tạo ra một memoized callback và chỉ tạo ra callback mới khi dependencies thay đổi. Nhận vào 2 tham số: 1 là function, 2 là dependencies. Return memoized callback. Chỉ tạo ra function mới khi dependencies thay đổi. Nếu dùng empty dependencies thì

1. UseCallback() là gì?

Khái niệm: Là một react hooks giúp mình tạo ra một memoized callback và chỉ tạo ra callback mới khi
dependencies thay đổi.

  • Nhận vào 2 tham số: 1 là function, 2 là dependencies.
  • Return memoized callback.
  • Chỉ tạo ra function mới khi dependencies thay đổi.
  • Nếu dùng empty dependencies thì không bao giờ tạo ra function mới.

2. UseMemo() là gì?

Khái niệm: Là một react hooks giúp mình tạo ra một memoized value và chỉ tính toán ra value mới khi
dependencies thay đổi.

  • Nhận vào 2 tham số: 1 là function, 2 là dependencies.
  • Return memoized value
  • Chỉ tính toán value mới khi dependencies thay đổi.
  • Nếu dùng empty dependencies thì không bao giờ tính toán lại value mới.

3. So sánh useCallback() vs useMemo().

Giống nhau:

  • Đều áp dụng kĩ thuật memoization.
  • Đều nhận vào 2 tham số: function và dependencies.
  • Đều là react hooks, dùng cho functional component.
  • Dùng để hạn chế những lần re-render dư thừa (micro improvements).
  • KHÁC NHAU

4. Có nên sử dụng useCallback() vs useMemo() hay không?

  • Không nên dùng cho tất cả components.
  • Nên dùng cho: đồ thị, biểu đồ, animations, những component nặng phần render.
  • Chỉ là micro improvements.

EX: https://codesandbox.io/s/bitter-platform-sklqi?file=/src/App.js

Nguồn tham khảo: https://www.ezfrontend.com/

Nguồn: viblo.asia

Bài viết liên quan

Cấu hình Prisma v7 Với Nest.js Mới nhất

Setup Prisma v7 trong Nest.js Bài viết dành cho ai mới học Nest.js và chọn prisma làm OR

Tấn Công Ứng Dụng Web: Mối Đe Dọa Hàng Đầu – Phần 2

viết lại nội dung này ” Phát hiện các cuộc tấn công Cross Site Scripting (XSS)

AI Chatbot 2025: Xu Hướng Tất Yếu Cho Doanh Nghiệp Dẫn Đầu

Giới thiệu AI chatbots đã trải qua một hành trình đáng kể, từ những công cụ t

Tấn Công Ứng Dụng Web: Mối Đe Dọa Hàng Đầu – Phần 1

Tấn công web là gì? Ứng dụng web là các ứng dụng cung cấp dịch vụ cho người