在react的官方教程中 有
为了在回调中正确使用“this”,这个绑定是必不可少的。
下面对这句话进行解释:
除了这种加bind(this)的方法 ,还有一种方法,即将事件响应函数更改为箭头函数。具体方式如下:
下面注意:
在ES6 class 内定义方法时,如果不是箭头函数,方法是挂载在原型对象上的!
就像下面的handleClick() 函数,输出的就是this 那么this 就是button对象
输出结果:
如果是箭头函数,就会有
this 指向了想要的对象环境中
总结
通过以上代码解析,能知道 React 中,在不适用箭头函数时,需要通过 bind 将函数内 this 指向当前对象才能正常访问。
而使用箭头函数时,由于箭头函数的特性,函数内的 this 就是当前对象上下文,所以不需要 bind 来指向。