Create a Controlled Input in React, What I've Missing?

Tell us what’s happening:

I have a hard times to figured out, what I’ve been missing. Please help to figure out. Thanks

Your code so far


class ControlledInput extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      input: ''
    };
    // change code below this line
  this.handleChange = this.handleChange.bind(this);
    // change code above this line
  }
  // change code below this line
handleChange(event) {
  this.setState = ({
    input: event.target.value
  });
}
  // change code above this line
  render() {
    return (
      <div>
        { /* change code below this line */}
<input value = {this.state.input} onChange = {this.handleChange} />
        { /* change code above this line */}
        <h4>Controlled Input:</h4>
        <p>{this.state.input}</p>
      </div>
    );
  }
};

Your browser information:

Google Chrome version 84 (64-bit)

Challenge: Create a Controlled Input

Link to the challenge:

1 Like

this.setState is a function you should call, not assign a value to.

So, where am I supposed to change? I still don’t get it.

Hey this.setState is a function so the code at line number 14 should be :

this.setState({
    input: event.target.value
})

Finally it works, thank you.