javascript - React Native:将从 firebase 获取的数据传递到 Flatlist
问题描述
我正在从 firebase 获取要传递给 Flatlist 组件的项目列表。
现在我做:
fetch('https://demo.firebaseio.com/posts.json', {
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(items => {
items = Object.entries(items).map(item => ({
...item[1],
key: item[0]
}));
this.setState({
posts: items,
isLoading: false
})
}).catch(err => {
alert(JSON.stringify(err));
});
接着:
<FlatList data={this.state.posts} renderItem={({item}) => {
return <Text>{item.title}}</Text>
}} keyExtractor={(item) => { return item.key; }} />
这可行,但效率不高,我需要循环两次,一次将其转换为数组,另一次将每个项目呈现在平面列表中,这将是大型数据集的噩梦。
有什么建议么?
解决方案
推荐阅读
- javascript - 如何通过调用我的方法 en React 使我的 url 工作?
- string - 如何将数据网格值与组合框项进行比较?
- flutter - 如何将 dart/flutter 中具有唯一键和数组值(对象)的地图传递给小部件?或者如何打印?
- r - 想要将以下内容组合到 R 中的日期时间列中
- python - 为什么python中这个二进制搜索代码中的计数器没有增加?
- java - 无法使用 MongoDB Java 按 lastprocessedTime 查询
- c# - C# (WPF) 数据表内存管理(建议 | 指南)
- python - 可以在绘图内布置散景 y 刻度
- typescript - 是否可以在不在子模块中注册实体的情况下使用@InjectRepository?
- python - 使用 BeautifulSoup 创建带有嵌套标签的新标签