React / Redux - onKeyPress也会触发onBlur

时间:2017-11-04 22:07:36

标签: reactjs redux

我在Redux应用程序中有一个带有表单的React。当用户通过onBlur属性填写表单时,此表单会查看用户输入的内容。如果用户通过onKeyPress按Enter键,则会执行相同的查找操作。

当此查找失败时,屏幕上会显示错误。但是,当用户按下Enter键时,会显示两个错误:一个用于onKeyPress,另一个用于onBlur。如果onBlur已解雇,如何防止onKeyPress被解雇?

我的示例代码:

<TextFieldComponent
    placeholder="Type in text here"
    value={this.props.text}
    onBlur={() => this.props.validation()}
    onKeyPress={() => this.props.validation()}
>

1 个答案:

答案 0 :(得分:0)

onBlur不会触发onKeyPress,但仅​​在输入失去焦点时才会触发。

如果您不想对同一输入进行两次验证,则应始终跟踪输入值,并仅在值发生更改时进行验证。