【问题标题】:How to pass a variable to callback of setState in React Component? [duplicate]如何将变量传递给 React 组件中的 setState 回调? [复制]
【发布时间】:2019-09-18 03:07:22
【问题描述】:

我有以下事件处理程序。问题是e 在回调函数中不可用。我该如何解决这个问题?

handleChange(e){
    this.setState((prevState, props) => ({
      ...prevState,
      university: {
        ...prevState.university,
        [e.target.name]: e.target.value // error line
      }
    }));
}

TypeError: 无法读取 null 的属性“名称”

【问题讨论】:

    标签: reactjs


    【解决方案1】:

    因为 event.target 中没有 name 属性。
    Create a "value" state and initialize with event.target.value.

    【讨论】:

    • 抱歉打错了。检查修改后的版本。
    【解决方案2】:

    这是解决方案。

    handleChange({ target: { name, value } }){
        this.setState((prevState, props) => ({
          ...prevState,
          university: {
            ...prevState.university,
            [name]: value
          }
        }));
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-31
      • 2012-10-24
      • 1970-01-01
      • 2018-11-22
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      相关资源
      最近更新 更多