【发布时间】:2021-04-06 22:54:14
【问题描述】:
import React,{useState,useEffect} from 'react'
import {Bar} from 'react-chartjs-2';
const Chart = ({val}) => {
const [Dataa,setdata] = useState([]);
useEffect(()=>{
async function fetchData(){
const apiresponse =await fetch('https://disease.sh/v3/covid-19/countries');
const apidata =await apiresponse.json();
console.log(apidata);
setdata(apidata);
}
fetchData();
},[])
const chartData = { labels: ['Total Cases', 'Deaths', 'Recovered','Active Cases'],
datasets: [
{
label: 'My First dataset',
backgroundColor: ['#737270','red','green'],
borderColor: 'rgba(255,99,132,1)',
borderWidth: 1,
hoverBackgroundColor: 'rgba(255,99,132,0.4)',
hoverBorderColor: 'rgba(255,99,132,1)',
data: [Dataa && Dataa[val].cases,Dataa[val].deaths,Dataa[val].recovered,Dataa[val].active] }
]
}
return (
<div>
<h2>Bar Example</h2>
<Bar
data={chartData}
width={100}
height={190}
options={{
maintainAspectRatio: false
}}
/>
</div>
)
}
export default Chart;
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
我正在尝试获取 Covid-19 统计数据以在条形图中显示它,但它在访问对象属性时出错。 Val 是数组的索引号,因为 api 开始获取对象数组。
【问题讨论】:
-
请使用 Stackoverflow 工具栏中的“添加脚本”。因此我们可以帮助您直接在键盘中进行调试。
-
如何添加@suther
-
这里的
val属性是什么?是数字吗? -
val 是索引号,因为从 API 获取的数据是一个对象数组
-
@MuhammadTariq 检查此link中的代码部分
标签: reactjs react-hooks use-effect