Không nên.
Cảnh báo đó nói rằng effect đọc một giá trị reactive (prop, state, hoặc biến tính từ chúng) nhưng không khai báo trong dependency array — nghĩa là khi giá trị đó đổi, effect không chạy lại và tiếp tục dùng giá trị của lần render cũ.
// warning: userId is read but not declared
useEffect(() => {
fetchProfile(userId).then(setProfile)
}, [])
// switching to another user keeps showing the first profileCách xử lý đúng theo thứ tự:
1. Khai báo đủ dependency — mặc định luôn làm cách này.
2. Nếu effect chạy quá nhiều vì dependency đổi mỗi render (object, function), sửa nguồn dependency: đưa function vào trong effect, tách primitive ra (user.id thay vì cả user), hoặc bọc bằng useMemo/useCallback.
3. Nếu thấy phải tắt lint mới đúng ý, thường effect đó không nên là effect — logic thuộc về event handler.
Tắt lint chỉ giấu cảnh báo, bug stale value vẫn còn và rất khó truy khi dữ liệu đổi theo route hoặc theo user.