[英]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.