Реагируйте с ES7: Uncaught TypeError: Невозможно прочитать свойство 'состояние' из неопределенного [дубликата]

На этот вопрос уже есть ответ здесь:

Невозможно получить доступ к экземпляру React (this) внутри обработчика событий 16 ответов

Я получаю эту ошибкуUncaught TypeError: Невозможно прочитать свойство 'состояние' из неопределенного всякий раз, когда я набираю что-нибудь в поле ввода AuthorForm. Я использую React с ES7.

Ошибка возникает на3-я строка функции setAuthorState в ManageAuthorPage, Независимо от этой строки кода, даже если я добавлю console.log (this.state.author) в setAuthorState, он остановится на console.log и вызовет ошибку.

Не могу найти подобную проблему для кого-то еще через Интернет.

ЗдесьManageAuthorPage код:

import React, { Component } from 're,act';
import AuthorForm from './authorForm';

class ManageAuthorPage extends Component {
  state = {
    author: { id: '', firstName: '', lastName: '' }
  };

  setAuthorState(event) {
    let field = event.target.name;
    let value = event.target.value;
    this.state.author[field] = value;
    return this.setState({author: this.state.author});
  };

  render() {
    return (
      <AuthorForm
        author={this.state.author}
        onChange={this.setAuthorState}
      />
    );
  }
}

export default ManageAuthorPage 

И вотAuthorForm код:

import React, { Component } from 'react';

class AuthorForm extends Component {
  render() {
    return (
      <form>
                <h1>Manage Author</h1>
        <label htmlFor="firstName">First Name</label>
                <input type="text"
                    name="firstName"
          className="form-control"
                    placeholder="First Name"
          ref="firstName"
          onChange={this.props.onChange}
                    value={this.props.author.firstName}
          />
        <br />

        <label htmlFor="lastName">Last Name</label>
                <input type="text"
                    name="lastName"
          className="form-control"
                    placeholder="Last Name"
          ref="lastName"
                    onChange={this.props.onChange}
          value={this.props.author.lastName}
                    />

                <input type="submit" value="Save" className="btn btn-default" />
            </form>
    );
  }
}

export default AuthorForm

Ответы на вопрос(2)

Ваш ответ на вопрос