You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法在FlatList的keyExtractor中访问JSON三级数据id,列表无显示

解决FlatList加载JSON数据不显示及keyExtractor问题

你的问题出在两个核心点上,直接导致FlatList无法正常渲染:

  • 数据源传错了:FlatList的data属性需要传入要遍历的数组,而你传的是整个BookingData对象。正确的数据源应该是JSON结构里的预订数组,也就是BookingData.data.bookings。
  • keyExtractor写法错误:当data是bookings数组时,keyExtractor的item参数就是数组里的单个预订对象,直接取item.id作为key即可,不需要再通过index嵌套访问。

修正后的代码如下:

<FlatList
  data={BookingData.data.bookings}
  renderItem={renderItem}
  keyExtractor={(item) => item.id.toString()}
/>

额外说明:因为id是数字类型,React要求列表项的key必须是字符串,所以用toString()把数字转成字符串,能避免潜在的控制台警告。

内容的提问来源于stack exchange,提问作者LongShankz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 01:38:11