为了账号安全,请及时绑定邮箱和手机立即绑定

ES6写react组件 _this.setState is not a function

ES6写react组件 _this.setState is not a function

慕尼黑8549860 2018-08-03 18:59:39
问题描述使用react开发过程中,用ES6语法写组件如下const Name = (props) => {    this.state = {        data: null,        visible: false     };         const open = (data) => {        this.setState({             data,            visible: true         });     }         return (        <div>content</div>     ); }当执行open()时提示Unhandled Rejection (TypeError): _this.setState is not a function尝试过const that = this;that.setState({})抱一样的错误,求大佬解答。
查看完整描述

2 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

这种写法就是stateless组件了,你都没继承react的方法,所以没有生命周期,没有render,没有state,setState的方法肯定也没有,题主搜一下stateless组件看看就清楚了

查看完整回答
反对 回复 2018-08-05
?
精慕HU

TA贡献1845条经验 获得超8个赞

你这样写是无状态组件,没有生命周期,当然没有react.component的方法,你需要改为

class Name extends React.Component(){
 constructor() {    super()    this.state = {
      
    }
  }
   render (){}


}


查看完整回答
反对 回复 2018-08-05
  • 2 回答
  • 0 关注
  • 2487 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信