【发布时间】:2015-07-08 13:40:33
【问题描述】:
我正在将 React 组件更新为 ES6,遇到了这个问题中描述的问题 - Unable to access React instance (this) inside event handler - 即未绑定到组件实例。
这是有道理的,当然有效,但我对答案的另一部分感到困惑:
请注意,绑定函数会创建一个新函数。你可以 要么直接在渲染中绑定它,这意味着一个新函数将是 每次渲染组件时创建,或将其绑定到您的 构造函数,它只会触发一次。
constructor() { this.changeContent = this.changeContent.bind(this); }对
render() { return <input onChange={this.changeContent.bind(this)} />; }
我假设构造函数中的绑定是性能等的首选方法,但你知道他们对 assume 的看法!
这两种方法的权衡是什么?有没有一种情况肯定比另一个更好?还是没关系?
【问题讨论】:
标签: javascript reactjs this