我很反应原生。我想知道作为react-native的SectionView,ListView和FlatView之间的核心差异是什么?我应该使用它们的情况。
它是一个已弃用的类,用于创建List。你也可以阅读List documentation.
DEPRECATED - 使用其中一个新的列表组件,例如FlatList或SectionList
<ListView
dataSource={this.state.dataSource}
renderRow={(rowData) => <Text>{rowData}</Text>}
/>
现在您应该使用此类来创建列表。它的性能优于ListView。因为ListView在大数据时很慢。但FlatList管理它显着。
它具有ListView上的许多功能
以下是FlatList的创建方式
<FlatList
data={[{key: 'a'}, {key: 'b'}]}
renderItem={({item}) => <Text>{item.key}</Text>}
/>
当需要将列表分成多个部分时使用。它的实现与FlatList略有不同。它需要两个项目。
它具有所有FlatList功能,并且还具有部分支持。
这是实施
// Example 1 (Homogeneous Rendering)
<SectionList
renderItem={({item, index, section}) => <Text key={index}>{item}</Text>}
renderSectionHeader={({section: {title}}) => (
<Text style={{fontWeight: 'bold'}}>{title}</Text>
)}
sections={[
{title: 'Title1', data: ['item1', 'item2']},
{title: 'Title2', data: ['item3', 'item4']},
{title: 'Title3', data: ['item5', 'item6']},
]}
keyExtractor={(item, index) => item + index}
/>