我不太清楚为什么会收到此错误。
class ContentProcessing extends Component {
constructor(props) {
super(props);
this.state = {content: currentData};
this.setData = this.setData.bind(this);
}
setData(data) {
this.setState({
content: data
});
}
render() {
return (
<div>
<Card title={this.state.content} />
</div>
);
}
}
错误报告于
this.setState({
content: data
});
基本上,我从另一个类中的按钮启动 setData,一旦单击它,我的分页就会中断并收到错误。
我检查了一下,看起来在 setData() 中,this.state
未定义,所以我想这可能就是问题所在。
我查看了其他一些也有同样问题的答案,但他们的修复似乎对我不起作用。
最佳答案
这个错误是因为 this.setState 没有绑定(bind)到主类中的 this 。如果你想将 setState 传递到其他地方,你需要先在它的主类中绑定(bind)它:
class ContentProcessing extends Component {
constructor(props) {
super(props);
this.state = {content: currentData};
this.setData = this.setData.bind(this);
this.setState = this.setState.bind(this); // <- try by adding this line
}}
关于javascript - 无法读取ReactJS中未定义的属性 'enqueueSetState',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49591998/