React class组件中的render函数this指向问题?

为什么在render函数中使用this是可以正确指向当前类,而在我定义的其他函数中却不可以正确指向呢?

是不是React.Component这个父类的构造函数把子类中的render函数给bind到当前类了?

阅读 2k
2 个回答

this 的指向不符合你的预期和 React 没有关系。

this 的指向是根据调用者决定的,你定义的 handleClick 作为事件回调绑定到 dom 元素上了,this 指向肯定不是当前的实例啦,所以改用箭头函数就好啦

其他函数要用箭头函数的形式

handleClick = () => {
    console.log(this)
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题