在 React 中使用动态键来设置状态

Using a dynamic key to setState in React

我从输入字段将值作为参数发送给设置状态的函数。我有多个输入字段,所以想使用它们的名称(等于它们的状态键)然后使用相同的函数并将键和值传递给设置状态的函数。

这是我的代码。

<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 参数有效,但 key 参数无效。

提前致谢。

使用动态密钥设置状态时,需要将密钥包裹在 [] 内,如

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