Как обрабатывать данные элемента плоского списка в реагирующем?

1

Я использую 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 ...

Помоги мне !!

Теги:
react-native

1 ответ

0

Вы можете использовать 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 и т.д., Вы можете определить, как хотите.

Проверьте эту ссылку для получения дополнительной информации

  • 0
    undefined не является объектом (оценивающим 'section.data.length'), они дали мне такую ошибку
  • 0
    Где вы пробовали section.data.length В renderSectionHeader() ??
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню