我有一個列表只是簡單的文本,呈現到平原上反應本地,但我遇到非常非常慢的性能,使應用程序無法使用。反應原生100+項目flatlist非常緩慢的性能
我該如何解決這個問題?我的代碼是:
<FlatList
data={[{key: 'a'}, {key: 'b'} ... +400]}
renderItem={({item}) => <Text>{item.key}</Text>}
/>
我有一個列表只是簡單的文本,呈現到平原上反應本地,但我遇到非常非常慢的性能,使應用程序無法使用。反應原生100+項目flatlist非常緩慢的性能
我該如何解決這個問題?我的代碼是:
<FlatList
data={[{key: 'a'}, {key: 'b'} ... +400]}
renderItem={({item}) => <Text>{item.key}</Text>}
/>
你可以做一些改進,如:
renderItem
功能渲染功能之外,因此它不會重新創建它每次渲染功能調用。initialNumToRender
道具getItemLayout
跳過示例代碼動態內容的測量:
const renderItem = ({item}) => (<Text>{item.key}</Text>);
const getItemLayout = (data, index) => (
{length: ITEM_HEIGHT, offset: ITEM_HEIGHT * index, index}
);
function render() => (
<FlatList
data={[{key: 'a'}, {key: 'b'} ... +400]}
renderItem={renderItem}
getItemLayout={getItemLayout}
initialNumToRender={5}
/>
);
它說意外的令牌 – user8026867
試一下這個列表視圖https://github.com/Flipkart/ReactEssentials,它比FlatList呈現的物品少得多,然後再循環它們。應該快得多。
npm install --save recyclerlistview
版本的react-native? – sooper
最新......... – user8026867