react中提示Do not mutate state directly. Use setState() react/no-direct-mutation-state
react中直接改变state会报警告 Do not mutate state directly. Use setState() react/no-direct-mutation-state,在react中不允许直接修改state,我们可以迂回来处理一下:
let str = this.state.strArr;
let strRes = str += e.target.innerText;
this.setState({
strArr:strRes
});
到这里可以了,但是还有一个新问题,就是数据不同步,原因就是setState是异步,所以我们在获取新的state的时候需要在setState的回调函数中处理:
let str = this.state.strArr;
let strRes = str += e.target.innerText;
this.setState({
strArr:strRes
},()=>{
console.log(this.state.strArr)
});
欢迎关注小程序,感谢您的支持!