javascript - 列表末尾的 React Native FlatList onEndReached 继续获取数据
问题描述
我有一种从 api 获取数据的方法,如下所示:
const [data, setData] = useState([]);
const fetchData = () => {
const newData = [];
callApi().then(data => {
data.forEach(item => newData.push(item)
}).then(() => {
setData(newData);
});
}
每次到达列表末尾时,我都会调用此方法:
<FlatList data={data} onEndReached={fetchData} onEndReachedThreshold={0.15} ... />
我的问题是,当到达列表的末尾(真正的结尾,我的意思是,没有更多数据要获取)时,此方法将继续被调用。
任何想法如何解决它?我曾想过第一次调用 api 来检索每个项目并获取总金额,但我认为这会使我的另一个方法“fetchData”变得愚蠢,因为在第一时间我将下载所有项目......但这里的问题是,在 api 中可以检索 1M 项。
谢谢你。
解决方案
推荐阅读
- android - Firebase PhoneAuth - 多个所有者
- apache-kafka - 组合来自不同 Flink 作业的结果
- kotlin - Kotlin 中的运算符重载以及此代码如何工作?
- schema.org - Schema.org 的问题
- php - 为什么字符串在phpexcel中的单元格中被剪切
- javascript - 如何将切换功能添加到子孩子
- 在jQuery中
- pandas - 熊猫:将单元格值设置为当前行的索引?
- sql - SQL INSERT 语句与 FOREIGN KEY 冲突
- java - Bouncy Castle 文件加密 open() 方法
- php - PHP MYSQL 插入类别树