javascript – 在React中使用动态键setState

参见英文答案 > How to use a variable for a key in a JavaScript object literal?                                    12个
>            Reactjs setState() with a dynamic key name?                                    7个
>            react setState with dynamic key                                    1个
从输入字段我将值作为参数发送到设置状态的函数.我有多个输入字段,所以想使用它们的名称(等于它们的状态键)然后使用相同的函数并将键和值传递给设置状态的函数.

这是我的代码.

<Modal
  onTextChange={(text, key) => {
    this.setState({
      event: {
        key: text
      }
    })
  }}
/>

和输入

<input
  type="date"
  name="dateStart"
  onKeyUp={event => this.props.onTextChange(event.target.value, event.target.name)
/>

text参数有效,但关键参数不起作用.

提前致谢.

解决方法:

使用动态键设置状态时,需要将键包裹在[]中

<Modal
  onTextChange={(text, key) => {
    this.setState({
      event: {
        [key]: text
      }
    })
  }}
/>
上一篇:你真的了解setState()吗?


下一篇:antD 时间框清空