javascript - UseEffect API 请求未在页面加载时显示
问题描述
如果已经回答了类似的问题,请提前道歉。我已经尝试了一切,但仍然无法弄清楚为什么我会遇到这个小错误。我希望我的 Firestore 中的这组推文在加载时呈现在页面上。现在,它只发生在我发出发布请求之后。
这是我的要求
useEffect(() => {
const getTweets = async () => {
const tweets = await firestore.collection('tweet').get();
tweets.forEach(doc => {
results.push(doc.data());
})
}
getTweets()
}, [])
这是我将其映射到页面的地方:
return (
<>
<main className="tweet-container">
<div className="tweet-container--content">
{results.map((tweet, index) => (
<InputResults
key={index}
tweet={tweet}
/>
))}
</div>
</main>
</>
)
}
太感谢了
解决方案
试试这样的,
import React, {useState, useEffect} from "react";
function App() {
const [results, setResults] = useState([]);
useEffect(() => {
const getTweets = async () => {
const tweetsData = [];
const tweets = await firestore.collection('tweet').get();
tweets.forEach(doc => {
tweetsData.push(doc.data());
})
setResults(tweetsData);
}
getTweets()
}, [])
return (
<>
<main className="tweet-container">
<div className="tweet-container--content">
{results.map((tweet, index) => (
<h1>{tweet}</h1>
))}
</div>
</main>
</>
)
}
推荐阅读
- c++ - 获取从 C++ 中同一类中的构造函数调用的方法返回的值
- xml - 在根元素中使用 XSLT 命名空间将 XML 转换为 CSV
- java - 如何使用正则表达式解析文本文件并将结果写入 Java 中的另一个文件
- c# - 编辑结果数据时 LINQ 查询无效?
- python - 尝试在 python 中安装 selenium 或任何应用程序时出错
- amcharts - 如何仅在 AMCharts 中为 AMStock 图表显示类别轴值
- django - 自定义错误页面出现 django 500 错误而不是 404
- batch-file - 用户输入批处理文件崩溃@echo var
- docker - 如何为 docker 安装 wkhtmltopdf
- python - 如何在特定的欧拉角范围内随机绘制四元数进行旋转?