[英]Got an error when tried to add new element into array state in React
我是React的新手,想将新数据添加到数组状态,但是遇到错误:
需要一个赋值或函数调用,而是看到一个表达式
getTitle(title) {
axios
.get(
`http://api.openweathermap.org/data/2.5/forecast?q=${title}&APPID=7ad09d078633b652ecef8587a337639e&units=metric`
)
.then(res => {
// this.setState({ title: res.data.city });
this.setState(prevState => {
title: [...prevState.title, res.data.list]; //Here I get the error
});
});
}
setState
需要返回一个表示新状态的对象。 最快的解决方法是将该箭头函数的主体括在括号中:
this.setState(prevState => ({
title: [...prevState.title, res.data.list],
}));
现在它返回一个json对象
我认为您忘记了返回,请尝试以下操作:
this.setState(prevState => ({
title: [...prevState.title, res.data.list] //Here I get the error
}))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.