Analyze why extraData is used in FlatList when item rendering depends on external state.
4 phương ánCó giải thích
Các phương án trả lời
Chọn một phương ánLời giảiChọn phương án để mở
Đáp án đúng: "To force re-render when needed". FlatList là PureComponent: nó chỉ render lại khi props thay đổi theo phép so sánh nông (shallow), chủ yếu là data. Nếu renderItem đọc thêm một state bên ngoài data, chẳng hạn selectedId, thì khi state ấy đổi mà mảng data giữ nguyên tham chiếu, danh sách sẽ không cập nhật; truyền extraData={selectedId} báo cho FlatList biết cần render lại. "To change the background color" là việc của style hoặc contentContainerStyle. "To reduce image size" không liên quan, kích thước ảnh do component Image và nguồn ảnh quyết định. "To hide the list header" thực hiện bằng cách không truyền hoặc đổi ListHeaderComponent.