react事件 报错Cannot read property 'setState' of undefined
import React, { Component } from "react";
export class TestHanderClick extends Component {
//有构造器state写在里面, 构造器中必须要有super并且传递参数
constructor(props) {
super(props);
this.state = {
num: 100,
};
}
myChuFa() {
alert("被触发了");
// 报错 Cannot read property 'setState' of undefined
// 说明state这个对象是未定义的,如何解决呢
this.setState({
num: this.state.num + 10,
});
}
render() {
// this是这个组件
return (
<div>
<div>{this.state.num}</div>
<div onClick={this.myChuFa}> 我是事件</div>
</div>
);
}
}
export default TestHanderClick;
初次看这个代码是没有问题的,但是你会点击后会发现报错
报错 Cannot read property 'setState' of undefined
说明state这个对象是未定义的,如何解决呢
只需要将
<div onClick={this.myChuFa}> 我是事件</div>
改成为
<div onClick={this.myChuFa.bind(this)}> 我是事件</div>
作者:流年少年
出处:https://www.cnblogs.com/ishoulgodo/
本文版权归作者所有,欢迎转载,未经作者同意须保留此段声明,在文章页面明显位置给出原文连接
如果文中有什么错误,欢迎指出。以免更多的人被误导。
出处:https://www.cnblogs.com/ishoulgodo/
想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,或者关注博主,在此感谢!
万水千山总是情,打赏5毛买辣条行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主(っ•̀ω•́)っ✎⁾⁾!
想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!
![](http://images.cnblogs.com/cnblogs_com/IwishIcould/1900124/t_201214043958支付宝收款码.jpg?a=1607924145179)
支付宝
![](http://images.cnblogs.com/cnblogs_com/IwishIcould/1900124/t_20121604194271E6E296CCB71A007F4E22073D5EB64A.jpg)
微信
如果文中有什么错误,欢迎指出。以免更多的人被误导。