为了账号安全,请及时绑定邮箱和手机立即绑定

找不到类组件函数

找不到类组件函数

HUH函数 2022-07-08 15:53:42
我有一个问题,这是一个类组件:import React from 'react';  import ListToDo from './ListToDo';export default class TestClass extends React.Component{    state ={        tasks:[]    }    async componentDidMount(){        const response = await fetch('https://nztodo.herokuapp.com/api/task/?format=json');        const tasks = await response.json        this.setState({            tasks        });    }    render(){        return(            <ul className="list-group">             {                this.state.tasks.map(function(singleTask){                    return <ListToDo task={singleTask} key={singleTask.id} />                })            }            </ul>        );    }错误是: TypeError: this.state.tasks.map is not a function } 为什么?我需要安装一些吗?
查看完整描述

2 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

response.json是一个函数。您正在将其分配给tasks国家。所以当你尝试使用Array.prototype.map(),tasks不是一个数组。


调用它而不是将其分配给任务:


    async componentDidMount(){

        const response = await fetch('https://nztodo.herokuapp.com/api/task/?format=json');

        const tasks = await response.json() // Call json function here

        this.setState({

            tasks

        });

    }


查看完整回答
反对 回复 2022-07-08
?
MMMHUHU

TA贡献1834条经验 获得超8个赞

response.json 是一个函数,因此你不能映射一个函数。只需将此行更改为

const tasks = await response.json();


查看完整回答
反对 回复 2022-07-08
  • 2 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号