Dependency array kiểm soát khi nào effect chạy lại.
- Không có array: chạy sau mỗi render.
- Array rỗng
[]: chỉ chạy sau mount, tương đương componentDidMount. - Array có giá trị
[a, b]: chạy khi a hoặc b thay đổi. - React ESLint plugin exhaustive-deps giúp phát hiện missing dependencies.