React为啥很多类里的标签上事件处理函数要用bind(this)

  

    render() {
        return (
            <div>
                <p onClick={this.clickHandler.bind(this)}>vz</p>
            </div>
        )
    }
    clickHandler() {
        console.log(this.clickHandler);
    }
    

上面标签里若不使用bind的话,点击p标签会报错,因为clickHandler运行时this不指向类的实例,若要指向类的实例,就需要bind绑上。

其实有时候不用bind改变函数作用域也没问题,哪种情况呢,就是clickHandler定义里不涉及到this指向,如上面的clickHandler里改成console.log('12345')。

上一篇:【Qt编程】Qt学习之窗口间的相互切换


下一篇:如何在CentOS里切换操作系统所用的语言,中英文切换