K
Câu hỏi phỏng vấn React.js
Câu hỏi

Reselect là gì và nó hoạt động như thế nào?

Câu trả lời

Reselect là một thư viện selector cho Redux, giúp tạo ra các selector có thể được tái sử dụng và memoized. Selector là một hàm cho phép bạn trích xuất và chuyển đổi dữ liệu từ Redux store một cách hiệu quả. Reselect được sử dụng để tính toán dữ liệu phái sinh từ state của Redux store mà không cần phải viết lại logic tính toán mỗi khi state thay đổi.

Đặc điểm của Reselect

  • Memoization: Reselect sử dụng memoization để lưu trữ kết quả của selector. Khi một selector được gọi nhiều lần với cùng một state, nó sẽ trả về kết quả từ bộ nhớ cache thay vì tính toán lại, giúp tăng hiệu suất ứng dụng.
  • Composability: Selector trong Reselect có thể được kết hợp để tạo ra các selector phức tạp hơn. Bạn có thể tạo các selector "nhỏ" và kết hợp chúng để tạo ra các selector "lớn" mà không cần phải lo lắng về việc tính toán lại không cần thiết.
  • Tái sử dụng: Selector có thể được tái sử dụng trong nhiều component, giúp giảm bớt việc viết lại logic và tăng tính bảo trì của mã nguồn.

Cách hoạt động của Reselect

  1. Tạo Selector: Bạn tạo một selector bằng cách sử dụng hàm createSelector từ thư viện Reselect. Selector này sẽ nhận vào một hoặc nhiều "input selector" và một hàm "transform function" để tính toán và trả về dữ liệu mong muốn.

    import { createSelector } from 'reselect';
    
    const g...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Làm thế nào để tránh việc cần phải binding trong React?

middle

Bạn sẽ sử dụng flushSync trong ReactJS khi nào?

middle

React context là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào