было не больше 3 например
это наверное rows - Определит height textarea, я реализовывал динамическую смену rows, чтобы поле расширялось в зависимости от прибавления строк, и уменьшалось если строк становилось меньше.
или css : min-height max-height Смотря какая цель.
А нет готовых решения, чтобы добавление новых строчек блочилась? но она не блочится, а добавляется скролл просто. Сейчас использую autosize textarea
Ну там ещё надо помоему textarea добавить overflow: hidden; И как-то отслеживать содержимое textarea Либо отдельно в функции, либо внутри jsx чтобы отлавливать value —— const [row, setRow] = useState(1) через useEffect например отслеживать стэйт и в jsx <textarea rows={row}></textarea>
О, снова здравствуйте
Нет, готового решения нет. И ты путаешь количество строк и количество символов, визуально помещающихся в одну ширину. Строки разделяются символами переноса строк, можно валидировать строку в onChange и запрещать добавление новых переносов при достижении конкретного количества. С количеством символов без переносов сложнее — нужно знать, сколько символов помещается в одной строке. И это количество может быть разным в зависимости от настроек пользователя. В любом случае костыли и велосипеды. Задача какая? Скорее всего она решается как-то иначе, если её озвучить, можно получить совет.
Я ещё вешал событие онченж на кнопку интер. Так прибавлялись строки. И ещё можно отслеживать дэлет и бэкспейс.
Молодец. Коллбэк onChange вызывается для любого типа ввода. Для бэкспейсов и энтера тоже
Да мне тоже не нравится данный подход. Хочу чтобы у textarea нельзя было превысить заданное количество row. Сейчас стоит maxRows= 4 и minRows=2 к примеру. С 2 до 4 у меня height динамически изменяется с помощью react-textarea-autosize . А вот запретить добавление более 4 строк, не знаю как. Думаю остается только отслеживать количество Row. Надеюсь доступно объяснил. То есть просто запрет на новый row если row уже равен maxRow. А если row = maxRow, там следить что тыкает пользователь и если новый символ создает новую строчку, предотвратить это) как то так я себе алгоритм вижу
Обсуждают сегодня