我试图从RapidAPI的API中获取2019年冠状病毒病的统计数据。我想按日期获取统计数据,将数据插入图形。问题是API链接只能有一个日期,像这样:
https://covid-19-data.p.rapidapi.com/report/totals?date-format=undefined
const today = new Date();
const dd = String(today.getDate()).padStart(2, '0');
const mm = String(today.getMonth() + 1).padStart(2, '0');
const [labels, setLabels] = useState([])
useEffect(() => {
for(let i=dd-10; i<dd; i++) {
Axios({
method: 'GET',
url: `https://covid-19-data.p.rapidapi.com/report/totals?date-format=undefined&format=undefined&date=2020-${mm}-${i}`,
headers: {
"x-rapidapi-host": "covid-19-data.p.rapidapi.com",
"x-rapidapi-key": "cfb0f14a9fmsh913ae802309e7c9p175585jsn825aebcbd5ac"
}
})
.then(response => {
let temp = [...labels]
temp.push(response.data[0].date)
setLabels(temp)
})
.catch(error => {
console.log(error)
})
}
}, [])
问题在于,每次Axios检索新日期时,
标签
都会更改,而不是将新日期附加到标签
数组。
我在网上做了一些研究,人们说数据还没有加载,因此当我设置状态时,它会设置空的东西之类的东西,但我不太明白他们在说什么。
此外,当它检索数据时,它不会按顺序检索数据。例如,今天是4月15日,它应该按如下顺序检索数据:
0506070809101121314
,但它只是随机跳转。如果I console.log位于.then(),则会显示:
如你所见,这不是顺序。
请帮我看看,我在谷歌上搜索了解决方案,但没有用。
这是因为接收的结果是异步的并且状态更新是同步的。试试这个解决方案
useEffect(() => {
const today = new Date();
const dd = String(today.getDate()).padStart(2, "0");
const mm = String(today.getMonth() + 1).padStart(2, "0");
const fetchData = async (date) => {
if (date >= dd) return;
const result = await Axios({
method: "GET",
url: `https://covid-19-data.p.rapidapi.com/report/totals?date-format=undefined&format=undefined&date=2020-${mm}-${date}`,
headers: {
"x-rapidapi-host": "covid-19-data.p.rapidapi.com",
"x-rapidapi-key": "cfb0f14a9fmsh913ae802309e7c9p175585jsn825aebcbd5ac",
},
});
setLabels((val) => {
let temp = [...val];
temp.push(result.data[0].date);
return temp;
});
fetchData(++date);
};
fetchData(dd - 10);
}, []);
我在iOS应用程序中实现了一个导航栏,我将淡色设置为白色,但在运行应用程序时,状态栏不跟随淡色,只是透明的(见图)。我的目标是状态栏有半透明的风格。 怎么解决这个问题?
问题内容: MVC4 +实体框架4.4 + MySql + POCO /代码优先 我正在设置以上配置..这是我的课程: 这是我的web.config设置… 数据库AND表已经存在… 我对mvc还是很陌生,但是正在使用本教程 应用程序构建良好…但是,当我尝试使用Product(BTD.Data)作为我的模型类并使用BTDContext(BTD.DataContext)作为我的数据上下文类添加控制器时
首先,我要说的是,我已经搜索并发现了许多与此类似的问题,但我发现的所有问题都使用jquery、bootstrap、react等。。。,而我只是想要一个简单的HTML/CSS/JS解决方案。 更改反应模式数据动态启动模式,在动态按钮上动态添加按钮模式弹出窗口 我拿了W3School的代码,做了一些调整来测试我的理论,结果让我相信动态创建的按钮不能改变html中现有的元素。https://www.w3
本文向大家介绍jQuery 更改checkbox的状态,无效的解决方法,包括了jQuery 更改checkbox的状态,无效的解决方法的使用技巧和注意事项,需要的朋友参考一下 今天写页面遇到复选框动态全选或全不选问题,正常写法如下: but!第一次点击全选按钮input显示对勾,第二次就不行了,查了下有建议用prop的,亲测有效。那两者有啥区别呢? jQuery函数attr()和prop()的区别
问题内容: 抱歉,我真的很想念React中子组件内部的传递。 我已经实现了一个包含3个组件的待办事项列表。 有一个组成部分和一个组成部分。状态仅存储在组件中。 显示器起步不错,因此可以看到道具。但是在提交表单后,我收到了以下错误: TypeError:this.props.tasks.map不是函数 当我console.log时,我没有得到我的数组,而是数组的长度。 你知道为什么吗? 编辑 :谢谢
我正在尝试使用注册功能组件中的useState更新组件的状态。当用户输入无效的电子邮件地址并单击“提交”按钮时,以下代码将返回错误消息 我想用这段代码将错误消息设置为formData。 如何将错误消息设置为formData? 这是我的密码: