Я использую React-native Flat List, в котором я прошел отсортированный массив в реквизиты данных. Теперь я хочу показать элементы в соответствии с датой MY code:
<FlatList
horizontal={true}
keyExtractor={(item, index) => index.toString()}
data={this.state.Data}
renderItem={({ item }) =>
<View>
<Image source = {{uri: item.image}}/>
<Text>{item.date}</Text>
</View>
}
/>
Я хочу, чтобы мое изображение показывалось в соответствии с item.date.For Например:
Date - 20-09-2018
Image1 ..Image 2...
Date - 21-09-2018
Image1..Image2 ...
Помоги мне !!
Вы можете использовать SectionList для этой цели, поскольку он предоставляет хороший API для обработки таких случаев.
<SectionList
style={{ flex: 1 }}
keyExtractor={(item, index) => index.toString()}
renderItem={this.renderItem}
renderSectionHeader={this.renderSectionHeader}
sections={list || []}
ItemSeparatorComponent={this.renderSeparator}
/>
Для этого вам нужно сопоставить свои данные и создать нечто вроде массива объектов, таких как
[
{
heading: 'Date - 20-09-2018',
data: [Image1, Image2]
},
{
heading: 'Date - 21-09-2018',
data: [Image1, Image2]
}
]
Таким образом, функция renderSectionHeader будет выглядеть примерно так:
renderSectionHeader = ({section}) => {
return (
<View>
<Text>{section.heading}</Text>
</View>
)
}
И все остальные функции, такие как renderItem, renderSeparator и т.д., Вы можете определить, как хотите.
Проверьте эту ссылку для получения дополнительной информации
section.data.length
ВrenderSectionHeader()
??