开发者问题收集

react axios获取请求无法传递/访问响应数据

2022-06-05
91

我尝试创建一个取决于后端项目数量的动态列表;使用 axios get 请求,我能够成功获取数据。但是,当我尝试将数据传递给函数或打印数据时,它不会打印出完整的数据。它只显示项目标签(1、0......)并且当我尝试访问数据本身时,它给了我未定义的信息。

await axios.get("backend.com/category")
        .then((res) => {
            var result = [];
            //console.log(res.data) shows the array with the actual data
            for (var resdata in res.data) {
                //console.log(resdata) shows only 1 and 0
                result.push(
                    <div>
                        <ItemCards data = {resdata}></ItemCards>
                    </div>
                );
            }

以下是我得到的回复:

在映射之前登录时:

console.log(res.data)

在映射/ItemCards 函数内登录时:

console.log(resdata)

有人知道如何解决这个问题吗?非常感谢您抽出时间。

1个回答

如果您想将数组数据作为道具传递给子组件,请将循环更改为此循环:

for (var resdata of res.data) {
    result.push(
      <div>
         <ItemCards data={resdata} />
      </div>
     );
}
Moein Moeinnia
2022-06-05