在同一组件内反应更新状态

时间:2016-01-27 09:58:07

标签: reactjs

我是新手做出反应,我认为设置状态会重新渲染反应组件。我在这里错过了什么,在我致电this.forceUpdate()之前我的文字没有显示。

export default class Hello extends React.Component {
  constructor(props){
    super(props);
    this.state = { value: ''};
    this.handleChange = this.handleChange.bind(this);   
  }

  render() {
    return (
        <div>
            <input type="text" onChange={this.handleChange}   />
            <p> You entered {this.state.value} </p>
        </div>
    );
  } 

  handleChange(event){      
    this.state = { value: event.target.value };     
    this.forceUpdate();
  }
}

1 个答案:

答案 0 :(得分:1)

您应该调用.setState方法,而不是将新值分配给this.state

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