【发布时间】:2020-08-29 03:55:50
【问题描述】:
我正在使用简单的 fetch 调用从 API 中提取数据。 API 调用提取一个对象,我使用 JSON.Stringify 以可读格式提取数据,但是,我只想要它产生的数字。这是 API 的摘录
{
"confirmed": {
"value": 24637475,
"detail": "https://covid19.mathdro.id/api/confirmed"
},
"recovered": {
"value": 16108272,
"detail": "https://covid19.mathdro.id/api/recovered"
},
我只是想得到确认的值
这是我当前的代码
import React, { useState, useEffect } from "react";
const Cards = () => {
const [hasError, setErrors] = useState(false);
const [data, setData] = useState({});
async function fetchData() {
const res = await fetch("https://covid19.mathdro.id/api");
res
.json()
.then(res => setData(res))
.catch(err => setErrors(err));
}
useEffect(() => {
fetchData();
}, []);
return (
<div>
<span>{JSON.stringify(data.confirmed)}</span>
<hr />
<span>Has error: {JSON.stringify(hasError)}</span>
</div>
);
};
export default Cards;
【问题讨论】:
-
data.confirmed && data.confirmed.value没有给你你需要的东西吗? -
@keikai 字符串不能有属性
confirmed -
@charlietfl 这两个都给我未定义
-
不是。没有意义,您可以显示字符串化版本,但不能显示对象版本。创建一个重现它的演示
-
是的,如果这就是你从请求中使用的全部内容,那就更干净了
标签: javascript reactjs api fetch