React JS:从React.createClass更新时无法读取未定义的属性'setState'

ste*_*tes 1 components reactjs

我正在更新要使用的React组件:

class SearchFilms扩展了React.Component

代替:

var SearchFilms = React.createClass({

当我运行这个时,我收到以下错误:"无法读取未定义的属性'setState'"

谁能建议我如何更新这个?

class SearchFilms extends React.Component { 
//var SearchFilms = React.createClass({

    getInitial() {
        return {
            userInput: ''
        };
    }

    onChange(event) {
        this.setState({
            userInput: event.target.value
        });
        this.props.newVal(event.target.value);
    }

    render() {
        var languages = ['Shutter Island', 'Inception', 'Titanic', 'Blood Diamond'];

        return (
            <div className="row" id="Nav">
                <input type="text" 
                    value={this.props.userInput}
                    onChange={this.onChange}
                />
            </div>
        )       
    }

}
Run Code Online (Sandbox Code Playgroud)

小智 7

thisonChangeundefined,这是不具约束力引起的.

添加这些:

constructor(props) {
  super(props);
  this.onChange = this.onChange.bind(this);
}
Run Code Online (Sandbox Code Playgroud)

仅供参考,