javascript - webpack ReactJS : Unexpected token at this. 设置状态

标签 javascript json reactjs foreach webpack

我正在尝试更改 ReactJS 中数组中所有元素的状态,如下所示。这是我的第一个应用程序,所以我不知道这里出了什么问题。

closeState(){
    this.state.itemList.forEach(function(itemInd){
        this.setState({ itemInd.expState : 0 });
    }
});

它给我 Unexpected token 错误

我有

     this.state = {
         ...........
        itemList: [],
         .....
     }

itemList 中的每个元素都有:title、desc、expState

最佳答案

我认为你选择了错误的方法来解决这个问题。从你的例子中我了解到你想为 中的每个元素将 expState 设置为 0 itemList., 如果是真的最好这样做

const newItemListState = this.state.itemList.map((itemInd) => {
  return Object.assign(itemInd, { expState: 0 });
});

this.setState({ itemList: newItemListState })

在你的例子中你有几个错误

  1. 你忘记在回调函数后添加)
  2. 你需要为.forEach回调设置this,或者使用arrow function

    2.1。 this.state.itemList.forEach(function(itemInd) { }, this);

    2.2。 this.state.itemList.forEach((itemInd) => { });

  3. 您不能使用此 { itemInd.expState : 0 } 表达式。

关于javascript - webpack ReactJS : Unexpected token at this. 设置状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37585934/

相关文章:

django - django 1.5 CBV 中返回 HttpResponse 时出现 simplejson 错误

javascript - 是否可以在 React Prop 类型上检查 Prop 类型是否区分大小写?

javascript - evt.preventDefault 在 IE 和 Edge 中无法处理鼠标移动事件,甚至尝试过 evt.returnValue = false;但无法阻止传播

css - 如何在react中重用react-native StyleSheet(样式)?

javascript - 我想用 javascript 分割窗口 url

json - 如何保存从azure认知服务转换后的文本数据?

javascript - Chrome 和 IE 已解析/未解析 JSON 响应

java - Java套接字将byte []传输到.wav

用于屏幕抓取页面流的 Javascript API,包括按钮点击

javascript - es6中如何写子组件(child components)?