我已在文本输入中添加了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/