такой кейс:
const [value, setValue] = useState("")
<TextInput value={value} onChangeText={v => setValue(e.toUpperCase()) />
Когда я ввожу букву -- я вижу как отображается сначала маленькая буква, а затем реакт обновляет значение из стейта на большую букву.
Я знаю, что в нативке (по крайней мере в ios) есть метод делегата, который вызывается до отображения и там можно подменить вводимый текст. Но я что-то не могу найти этого в RN. Как будто onChangeText вызывается уже после того как в нативном компоненте произойдет ререндер. С этим можно что-то сделать?
Попробуй регулярные выражения если я правильно понял что ты хочешь
а что мне даст регулярка?
Еще раз, проблема в том, что перед тем как отформатированное значение отобразится в инпуте -- я вижу напечатанный символ в его исходном виде. Создается эффект моргания, потому что форматирование происходит с запозданием
Это я понял, вообще если кейф только для uppercase то у самоготи инпута есть параметр
воть
И при таком раскладе сначала видешь маленькую букву, а потом она превращается в заглавную?? Попробуй value={value.toUpperCase()} добавить
Обсуждают сегодня