Javascript webpack ReactJS:this.setState处出现意外令牌
我试图在ReactJS中更改数组中所有元素的状态,如下所示。这是我第一次申请,所以我不知道这里出了什么问题Javascript webpack ReactJS:this.setState处出现意外令牌,javascript,json,reactjs,foreach,webpack,Javascript,Json,Reactjs,Foreach,Webpack,我试图在ReactJS中更改数组中所有元素的状态,如下所示。这是我第一次申请,所以我不知道这里出了什么问题 closeState(){ this.state.itemList.forEach(function(itemInd){ this.setState({ itemInd.expState : 0 }); } }); 它给我意外的标记错误 我有 this.state = { ........... itemList
closeState(){
this.state.itemList.forEach(function(itemInd){
this.setState({ itemInd.expState : 0 });
}
});
它给我意外的标记
错误
我有
this.state = {
...........
itemList: [],
.....
}
itemList中的每个元素都有:
title、desc、expState
我认为您选择了错误的方法来解决这个问题。从您的示例中,我了解到您希望为itemList中的每个元素将expState
设置为0
,如果是真的,最好这样做
const newItemListState = this.state.itemList.map((itemInd) => {
return Object.assign(itemInd, { expState: 0 });
});
this.setState({ itemList: newItemListState })
在你的例子中,你有几个错误
您忘记在回调函数之后添加)
您需要为.forEach
回调设置此
,或使用箭头函数
2.1<代码>this.state.itemList.forEach(函数(itemInd){},this)代码>
2.2this.state.itemList.forEach((itemInd)=>{})代码>
无法使用此{itemInd.expState:0}
表达式