React Native FlatList ListEmptyComponent总是显示,即使不是空的



我正在浏览StackOverflow,寻找遇到我同样问题的人,但是找不到太多。我从后端抓取平面列表数据,我需要空文本占位符组件消失时,平面列表不是空的,但它总是停留在那里,永远不会消失,即使在平面列表中正确获取数据。我该如何解决这个问题?Ps.当将虚拟数据分配给平面列表时,不会发生此问题。

<FlatList
ListEmptyComponent={() => (<Text style={styles.emptyListText}>No upcoming trips to show.</Text>)}
data={trips}
renderItem={({ item }) => <MyTripsPostItem post={item} onPress={() => navigation.navigate("Post Screen")}
/>}
/>

我所做的是,我检查查询是否正在加载,如果不是,然后我显示我的视图ListEmptyComponent。

ListEmptyComponent={
!isLoading && (
<View style={styles.containerEmptyList}>
// things
</View>
)
}

我使用react-query,它提供了一个"isLoading"变量,但也可以在函数查询中使用useState

编辑:这个道具也不需要() =>功能。

trips.length代替trips

// checks if trips size is more than 0
!trips.length && <ListEmptyComponent /> 

,

// checks if trips is undefined or null
trips && <ListEmptyComponent /> 

在您的情况下,我假定您设置了默认值旅行到这是empty array/[],所以,它不是undefinednull

相关内容

  • 没有找到相关文章

最新更新