alexfedoseev
@alexfedoseev
React & Rails Dev

React: как правильно нормализовать положение курсора в инпуте?

Есть обычный текстовый инпут, в котором нужно после каждого изменения заменять «точку» на «восклицательный знак».

Первая итерация: jsfiddle.net/0cnnyy74

Если вводить «точку» в конце строки, то всё ок. Но если сделать стрелочкой на клавиатуре ← ← и поставить «точку» в серединке, то она конечно превратится в «восклицательный знак», но каретка отскочит в конец. Мне так не надо)

Решаю я это второй итерацией: jsfiddle.net/ruc56bbv

Внимание, вопрос: вторая итерация — это React-way? Или можно как-то элегантней внутри компонента это исполнить?
  • Вопрос задан
  • 2904 просмотра
Пригласить эксперта
Ответы на вопрос 1
@KnightForce
Если тебе просто нужно заменить все точки на восклицательном при вводе/изменении input, то:
onChange(e) {
    e.target.value=e.target.value.replace(/\./g, "!");//Регулярное выражение, которое заменит все точки
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
25 апр. 2024, в 12:20
15000 руб./за проект
25 апр. 2024, в 12:08
300 руб./за проект
25 апр. 2024, в 11:49
25000 руб./за проект