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

Một custom hook trong React có thể trả về JSX không?

Câu trả lời

Một custom hook trong React không nên trả về JSX. Custom hook được thiết kế để tái sử dụng logic, không phải để xử lý UI hay trả về các phần tử giao diện. Việc bao gồm JSX trong một custom hook có thể dẫn đến các vấn đề về hiệu suất và làm cho logic khó tái sử dụng trong các bối cảnh khác nhau.

Mặc dù không có quy định cứng rắn cấm việc trả về JSX từ một custom hook, nhưng điều này được coi là một anti-pattern. Custom hook nên tập trung vào việc cung cấp logic và trạng thái, và để cho các component sử dụng hook đó quyết định cách hiển thị UI dựa trên dữ liệu hoặc trạng thái được trả về từ hook.

Ví dụ, thay vì trả về JSX, một custom hook có thể trả về dữ liệu hoặc trạng thái và các hàm để tương tác với dữ liệu đó. Sau đó, component sử dụng hook có thể sử dụng dữ liệu và hàm được trả về để tạo ra JSX phù hợp.

Tóm lại, mặc dù kỹ thuật lập trình trong React không cấm việc một custom hook trả về JSX, nhưng theo các nguyên tắc và phong cách lập trình idiomatic trong React, custom hook nên được sử dụng để chia sẻ logic, không phải để chia sẻ phần tử giao diện.

middle

middle

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

senior

Làm thế nào để cập nhật status trên một đối tượng lồng nhau với useState()?

junior

DOM ảo là gì?

middle

Làm thế nào để có thể tạo ref trong React?

Bình luận

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

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