React-Native: Flatlist и Sectionlist генерируют исключение, когда в ios передается пустой массив - PullRequest
0 голосов
/ 25 января 2020

Ниже мой Flatlist код,

 <FlatList
      data={allRequestsArr}
      renderItem={({ item, index }) => this.renderItems(item, index)}
      keyExtractor={item => item.id.toString()}
      onEndReached={this.loadMore}
      onEndReachedThreshold={0.1}
      ListFooterComponent={this.renderFooter}
      initialNumToRender={allRequestsArr.length}
      ListEmptyComponent={this.renderEmptyResultContent}
 />

, когда когда-либо allRequestsArr и пустой массив, получая следующее исключение,

enter image description here

Это происходит только в iosFlatlist и SectionList). В android ListEmptyComponent вызывается как обычно.

Может кто-нибудь сообщить мне, что не так с кодом?. Спасибо!

1 Ответ

0 голосов
/ 25 января 2020

Если бы это был пустой массив, то не было бы выдано никакой ошибки, проблема в том, что либо значение undefined передано, либо NAN,

, поэтому попробуйте это:

<FlatList
      data={allRequestsArr?allRequestsArr:[]}
      renderItem={({ item, index }) => this.renderItems(item, index)}
      keyExtractor={item => item.id.toString()}
      onEndReached={this.loadMore}
      onEndReachedThreshold={0.1}
      ListFooterComponent={this.renderFooter}
      initialNumToRender={allRequestsArr.length}
      ListEmptyComponent={this.renderEmptyResultContent}
 />

Надеюсь, это поможет.

...