在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ react報(bào)錯(cuò) TypeError: Cannot read property

react報(bào)錯(cuò) TypeError: Cannot read property 'setState' of undefined

import React, { Component } from 'react';


class test extends Component {
    constructor(props) {
        super(props);
        this.state = {
            liked: false
        };
    }
    handleClick(event) {
        this.setState({liked: !this.state.liked});
    }
    render() {
        var text = this.state.liked ? '喜歡' : '不喜歡';
        return (
            <div onClick={this.handleClick}>
                你<b>{text}</b>我。點(diǎn)我切換狀態(tài)。
            </div>
        );
    }

}


export default test;

渲染是成功的

clipboard.png

但是點(diǎn)擊后就會(huì)報(bào)錯(cuò)

clipboard.png

回答
編輯回答
愿如初

constructor(props) {
    super(props);
    this.state = {
        liked: false
    };
}

改成

constructor(props) {
    super(props);
    this.state = {
        liked: false
    };
    this.handleClick = this.handleClick.bind(this);
}

方法需要bind this,不然指向不到

2017年9月12日 13:49