React native 在React Native';中,useState钩子在onKeyPress处理程序内不工作;文本输入
我正在使用React native 在React Native';中,useState钩子在onKeyPress处理程序内不工作;文本输入,react-native,React Native,我正在使用useState来保留输入值,当点击特定键时,我需要制作一些东西,因此我尝试使用onKeyPress,但用于更新状态的方法不起作用,请提供任何帮助:) 下面是代码的外观: 。。。 功能手柄按键(事件){ //这段代码看起来好像没有运行,为什么? setMessageInput('asdasdasd') } ... ... 看起来您需要将函数绑定到onKeyPress事件处理程序。您可以通过使用 功能手柄按键(事件){ setMessageInput('asdasdasd') } ...
useState
来保留输入值,当点击特定键时,我需要制作一些东西,因此我尝试使用onKeyPress
,但用于更新状态的方法不起作用,请提供任何帮助:)
下面是代码的外观:
。。。
功能手柄按键(事件){
//这段代码看起来好像没有运行,为什么?
setMessageInput('asdasdasd')
}
...
...
看起来您需要将函数绑定到onKeyPress事件处理程序。您可以通过使用
功能手柄按键(事件){
setMessageInput('asdasdasd')
}
...
手动按键(e)}/>
您的问题在于javscript语句,javascript中的函数需要显式绑定类内组件,而在函数组件中,您可以通过使用胖箭头函数实现相同的绑定
所以试着用下面的代码替换代码
const handleKeyPress = (event) => {
setMessageInput('asdasdasdasd')
}
...
<TextInput onKeyPress={(e) => handleKeyPress(e)} />
const handleKeyPress=(事件)=>{
setMessageInput('asdasdasd')
}
...
手动按键(e)}/>
希望能有帮助。不要怀疑我解决了这个问题,这是一个异步执行另一个处理程序的问题
const handleKeyPress = (event) => {
setMessageInput('asdasdasdasd')
}
...
<TextInput onKeyPress={(e) => handleKeyPress(e)} />