我认为问题是价值仍为空我需要设定价值,但我不知道如何。
constructor() {
super();
this.state = {
jsonReturnedValue: null
}
}
在这个区域我将值设置为null并尝试将其提取给我的反应但是当我只运行员工列表时#34;可见
fetch("http://localhost:5118/api/employeedetails/getemployeedetails")
.then(handleErrors)
.then(response => response.json()) .then(json => {
this.setState({ jsonReturnedValue: response.results });
}).catch(function(error) {
console.log(error);
});
}
}
render() {
return(
<div>
<h1> Listof Employees </h1>
<h1>{ this.state.jsonReturnedValue }</h1>
</div>
答案 0 :(得分:0)
问题是response.results
因为response
调用在第三次then
调用中不可用,只有第二次。{/ p>
尝试:
fetch("http://localhost:5118/api/employeedetails/getemployeedetails")
.then(handleErrors)
.then(response => response.json())
.then(json => {
this.setState({ jsonReturnedValue: json.results });
}).catch(function(error) {
console.log(error);
});
答案 1 :(得分:0)
使用axios进行http请求。然后检入然后使用console.log(响应);响应来自api或不是
答案 2 :(得分:0)
fetch
功能是否保留在componentDidMount()
?像这样:
componentDidMount() {
fetch('http://localhost:5118/api/employeedetails/getemployeedetails')
.then(resp => resp.json())
.then((resp) => {
console.log(resp);
this.setState({jsonReturnedValue: JSON.stringify(resp)});
}).catch(function(error) {
console.log(error);
});
}
请注意this.setState({jsonReturnedValue: JSON.stringify(resp)})
=&gt;当您只想转储它并查看时,必须使用resp
的字符串化版本。 (因为在render()
中,您刚刚返回<h1>{ this.state.jsonReturnedValue }</h1>
)
但是,您可以循环(可能使用.map
)jsonReturnedValue并正确呈现您的每位员工,然后请删除JSON.stringify