在onPressEnter之后反应KeyboardEvent更改输入值

时间:2019-02-12 17:02:01

标签: javascript reactjs typescript antd

我有一个输入,我需要使用onPressEnter调用的方法来重置该值:

<Input
    type="text"
    placeholder="new account"
    onPressEnter={(event) => this.onCreateAccount(event)}>
</Input>

这是称为:

的方法
onCreatePitch(event: React.KeyboardEvent<HTMLInputElement>, accountId: number) {
    this.props.onCreatePitch(event.currentTarget.value, accountId);
    /* event.currentTarget.value = '';  can't do this, it's a read only value*/
}

如您所见,event.currentTarget.value将不起作用,因为它是一个只读值,并且event.target.value不是有效的类型。不确定在这里做什么谢谢!

1 个答案:

答案 0 :(得分:1)

您可能具有控制输入值的状态

state = {
  value: ""
}

onEnterPress(event) {
 if (event is Enter) {
   this.setState({value: ""})
   return
 }
}

<Input
    type="text"
    placeholder="new account"
    value={this.state.value}
    onPressEnter={this.onEnterPressed} />