Продолжайте получать React this.setState не является функцией, хотя она связана - PullRequest
0 голосов
/ 06 ноября 2018

Я получаю это сообщение об ошибке, хотя я уже связал вызванную функцию. Я уже пробовал связывание в конструкторе this.onChangeEstablishmentSelected = this.onChangeEstablishmentSelected.bind(this) и вне его onChange={this.onChangeEstablishmentSelected.bind(this)}

Я не знаю, что вызывает это, потому что это не имеет никакого смысла, и я просмотрел много постов и официальных документов, и мне все кажется на месте.

class PatientFormReview extends Component {

state = {
        materializeInitialized: false,
        establishmentId: 0
    };

onChangeEstablishmentSelected(event) {
    this.setState({
        establishmentId: event.target.value
    });
}

renderOptions() {
    if (this.props.auth.establishments.length === 1) {
        this.setState = {
            establishmentId: this.props.auth.establishments[0].id
        };
        return (
            <Fragment>
                <select value={this.state.establishmentId} disabled>
                    <option value={this.props.auth.establishments[0].id}>
                        {this.props.auth.establishments[0].name}
                    </option>
                </select>
                <label>Establecimiento</label>
            </Fragment>
        );
    } else {
        let options = this.props.auth.establishments.map(establishment => (
            <option key={establishment._id} value={establishment._id}>
                {establishment.name}
            </option>
        ));
        return (
            <Fragment>
                <select
                    value={this.state.establishmentId}
                    onChange={this.onChangeEstablishmentSelected.bind(this)}
                >
                    {options}
                </select>
                <label>Establecimiento</label>
            </Fragment>
        );
    }
}
...