【问题标题】:Updating the values selected by "Select tag" in the state object更新状态对象中“选择标签”选择的值
【发布时间】:2020-07-30 16:07:07
【问题描述】:

我正在尝试根据选择标记中的选定值更新状态对象中的值。我在该选择标记上使用事件侦听器。但是当我试图从下拉列表中选择一个项目时,事件监听器会抛出一个错误提示

TypeError: 无法读取未定义的属性“值”

在事件监听器中,我正在使用更新我的状态

[e.target.name] : e.target.value

这是我的事件监听器:

handleInput = (e) => {
    console.log(e.target.value);
    this.setState({ [e.target.name]: e.target.value });
}

这是我的选择标签。我正在使用 antd 进行前端设计。 谢谢

【问题讨论】:

  • 你能把你的组件代码也贴出来

标签: javascript reactjs antd


【解决方案1】:

setState 是异步的。 React 事件被合并https://reactjs.org/docs/events.html。所以到 [e.target.name] 执行时,e.target 已失效。

 handleInput = (e) => {
 const eventObj= e.target;
 console.log(e.target.value);
 this.setState({ [eventObj.name]: eventObj.value });
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-06
    • 2016-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多