Когда вы подключаете обработчик изменений (вероятно, в вашем методе рендеринга), ваш jsx выглядит примерно так
<textarea onChange={ this.handleNameChange } ...
Измените его на
constructor(props){
super(props);
this.handleNameChange = this.handleNameChange.bind(this);
}
<textarea onChange={this.handleNameChange} ...
Это гарантирует, что this
по-прежнему ссылается на объект Component при выполнении обратного вызова change.
Обратите внимание, что не рекомендуется привязывать функцию непосредственно в render или где-либо еще в компоненте, кроме конструктора.Поскольку привязка при рендеринге вызывает создание новой функции в файле комплекта каждый раз при рендеринге компонента, поэтому мы не рекомендуем делать это.
Как и везде, где есть функции-обработчики событий, свяжите их в конструкторе и используйте ссылкукак упомянуто выше