#typescript #react-native #react-hooks #react-native-android #react-native-ios
Вопрос:
Я пытаюсь сфокусироваться на TextInput
том, когда я нажимаю кнопку редактирования, но я получаю ошибку.
Ниже приведен мой код:
const MyProfileScreen = (props: any) => {
const refsFocus = useRef(null);
return (
<>
<View>
<TextInput
placeholder={'editable test'}
placeholderTextColor={'red'}
style={{color: 'red'}}
ref={refsFocus}
/>
</View>
<TouchableOpacity
onPress={()=> { refsFocus.current.focus();} }
>
<Text>Edit text input</Text>
</TouchableOpacity>
</>
);
};
Но я получаю ошибку на onPress={()=> { refsFocus.current.focus()} }
сообщение об ошибке:
Object is possibly 'null'
const refsFocus: React.MutableRefObject<null>
Я не могу понять, что я делаю не так
Ответ №1:
Вы должны назначить крючок useRef для ссылки Textinput следующим образом
ref={refsFocus}
А затем в методе onPress вы должны назвать его так
onPress={()=> { refsFocus.current.focus()} }
Также удалите эту точку с запятой из функции со стрелкой onPress.
Комментарии:
1.
Object is possibly 'null'
, получение этой ошибки наrefsFocus.current