我已在文本输入中添加了onKeyPress事件监听器,以便当用户在电话键盘上单击完成或进入或“输入”时,它将调用我的searchProducts函数。我原本希望使用onSubmit类型的事件监听器选项,但无法找到类似的内容,所以现在我只能简单地检查按下的每个键。当按下诸如“j”或“x”之类的字符键时,它将触发onKeyPress事件并调用我的searchProducts函数。但是,当我用鼠标单击“完成”或按键盘上的Enter键时,没有任何 react 。如何获取此事件以触发onKeyPress事件监听器?

searchProducts = (e) => {
    if (e.nativeEvent.key == "Enter"){
        this.props.searchFunc(this.state.term);
    }
}

<TextInput
    ref='searchBar'
    style={styles.searchInput}
    placeholder={placeholder}

    onChangeText={this.searchSuggestions}
    onKeyPress={this.searchProducts.bind(this)}
    underlineColorAndroid="transparent"
/>

最佳答案

您可以使用 onSubmitEditing ,它是:



按键盘上的“完成”按钮后将调用它。

关于android - 为什么 "Enter"键不会在 React Native 中触发 onKeyPress?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50584382/

10-09 06:54