在句柄中传递事件时出错反应类组件输入元素上的更改



我很难弄清楚如何将event.target.value传递到下面的setState中。

我以为第一个事件(= event =(会在闭包中传递并可用于返回,但是当我调试它时,我没有得到定义。

什么是马上

event.target.value

class InputElement1CC extends React.Component {
  state = {
    inputText: "",
    historyList: []
  };
  handleChange = event => {
    this.setState(previousState => {
      return {
        inputText: event.target.value,
        historyList: [...previousState.historyList, event.target.value]
      };
    });
  };
  render() {
    return (
      <div>
        <a href="/">home</a>
        <h1>InputElement1CC - Class Component</h1>
        <input placeholder="Enter Some Text" onChange={this.handleChange} />
        <br />
        {this.state.inputText}
        <hr />
        <br />
        <ul>
          {this.state.historyList.map(rec => {
            return <div>{rec}</div>;
          })}
        </ul>
      </div>
    );
  }
}
export default InputElement1CC;

将值设置为变量并使用该变量。 像这样:

 handleChange = event => {
    const value = event.target.value;
    this.setState(
      state => ({
        inputText: value,
        historyList: [...state.historyList, value]
      }),
      () => console.log("state", this.state)
    );
  };

最新更新