Why does ScrollView become inefficient when rendering a large number of items compared to FlatList?

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "ScrollView renders all items at once, increasing memory usage". ScrollView dựng mọi phần tử con ngay khi mount, kể cả phần ở xa ngoài màn hình, nên với hàng nghìn dòng nó tốn bộ nhớ và làm chậm lần hiển thị đầu; FlatList thì ảo hoá, chỉ render vùng gần màn hình và giải phóng phần đã cuộn qua. "ScrollView lacks touch gesture support" sai vì ScrollView xử lý cử chỉ cuộn, kéo, thu phóng bình thường. Phát biểu "FlatList automatically applies platform-specific optimizations" không phải lý do: ưu thế của FlatList đến từ cơ chế ảo hoá dùng chung cho cả hai nền tảng. "ScrollView requires manual key extraction" sai vì ScrollView không có khái niệm keyExtractor; đó là prop của FlatList.

Cùng chương 3

Xuất hiện trong 1 bộ đề