React-Native + TypeScript中TextInput键盘事件的参数类型是什么?
React Native中TextInput onKeyPress事件的参数类型
React Native里,TextInput组件onKeyPress事件的参数类型是NativeSyntheticEvent<TextInputKeyPressEventData>,这是对应ReactJS中KeyboardEvent<HTMLInputElement>的等价类型。
使用示例
先从react-native包导入所需类型:
import { NativeSyntheticEvent, TextInput, TextInputKeyPressEventData } from 'react-native';
再为事件处理函数指定类型:
const Component = () => { const handleKeyPress = (event: NativeSyntheticEvent<TextInputKeyPressEventData>) => { const key = event.nativeEvent.key.toLowerCase(); console.log({key}); }; return ( <TextInput onKeyPress={handleKeyPress} // 其他属性 /> ) }
NativeSyntheticEvent是React Native封装原生平台事件的通用类型,内部的TextInputKeyPressEventData定义了该事件的具体数据结构,你代码中用到的按键值就对应nativeEvent.key。
内容的提问来源于stack exchange,提问作者jcubic
相关产品推荐
相关产品推荐

