Complete the code to set a unique key for each item in FlatList.
const MyList = () => {
return (
<FlatList
data={data}
keyExtractor={item => item.[1]
renderItem={({item}) => <Text>{item.name}</Text>}
/>
);
};The keyExtractor needs a unique id for each item to optimize rendering.
Complete the code to avoid re-rendering items unnecessarily by using memoization.
const RenderItem = React.memo(({item}) => {
return <Text>{item.name}</Text>;
});
const MyList = () => {
return (
<FlatList
data={data}
renderItem={({item}) => <[1] item={item} />}
keyExtractor={item => item.id}
/>
);
};Using React.memo wrapped component prevents unnecessary re-renders of list items.
Fix the error in FlatList by completing the missing prop to improve performance with large lists.
<FlatList
data={data}
renderItem={renderItem}
keyExtractor={item => item.id}
[1]
/>initialNumToRender controls how many items render initially, improving performance on large lists.
Fill both blanks to optimize FlatList by avoiding extra re-renders and improving scroll performance.
<FlatList
data={data}
renderItem={renderItem}
keyExtractor={item => item.id}
[1]={true}
[2]={50}
/>removeClippedSubviews removes offscreen items to save memory, and maxToRenderPerBatch limits how many items render per batch for smooth scrolling.
Fill all three blanks to implement getItemLayout for fixed-height items to speed up FlatList scrolling.
<FlatList
data={data}
renderItem={renderItem}
keyExtractor={item => item.id}
getItemLayout={(data, index) => ({
length: [1],
offset: [2] * index,
index: [3]
})}
/>getItemLayout helps FlatList calculate item positions quickly. Here, each item has fixed height 50, offset is 50 times index, and index is passed through.