我正在尝试获取多个API作为响应。第一个api成功获取并显示结果,但同一api的第二个和第三个给出错误“ TypeError:无法读取未定义的属性'data'”。我确信该api可以正常工作,因为它与第一个api是相同的api调用。
if(str1 != ""){
fetch('http://someapi/' + str1)
.then(response => response.json())
.then(data => this.setState({ result1: data }))
}
if(str2 != ""){
fetch('http://someapi/' + str2)
.then(response => response.json())
.then(data => this.setState({ result1: data }))
}
if(str3 != ""{
fetch('http://someapi/' + str3)
.then(response => response.json())
.then(data => this.setState({ result1: data }))
}
所有3个结果的预期输出
[{{name:a,age:1},{name:b,age:3}]
但是,在正确的响应存储进入状态的情况下,第一次获取成功。其余的api调用未完成其提取。
知道为什么会这样吗?和代码来解决这个问题?