未处理的拒绝(TypeError):无法读取未定义的属性“ length”

时间:2020-05-14 14:25:52

标签: javascript reactjs

如何解决此长度错误

我正在提供发生错误的代码,我试图解决此问题,但此处没有任何解决方法。

我尝试将useState更改为数组,但仍无法正常工作。

    const Chart = () => {
    const [dailyData, setDailyData] = useState([]);

    useEffect(() => {
        const fetchAPI = async () => {
            setDailyData(await fetchDailyData());
        }

        fetchAPI();
    });

    const linechart = (
        dailyData.length
            ? (
              <Line 
              data={{
                labels: dailyData.map(({ date }) => date),
                datasets: [{
                    data: dailyData.map(({ confirmed }) => confirmed),
                    label: 'Infected',
                    borderColor: '#3333ff',
                    fill: true,
                }, {
                    data: dailyData.map(({ deaths }) => deaths),
                    label: 'Deaths',
                    borderColor: 'red',
                    backgroundColor: 'rgba(255, 0, 0, 0.5)',
                    fill: true,
                }]
              }}
            />) : null
    );

这是index.js文件


    export const fetchDailyData = async ()=> {
    try {
        const { data } = await axios.get(`${url}/daily`);

        const modifiedData = data.map((dailyData) => ({
            confirmed: dailyData.confirmed.total,
            deaths: dailyData.deaths.total,
            date: dailyData.reportDate,
        }));

        return modifiedData;

0 个答案:

没有答案