169 похожих чатов

Всем привет. Подскажите best practies по работе с инпутами и

их валидацией через vue.
Хочу сделать ограничения инпутов по длине и другим условиям.
В данный момент стоит просто валидация: [если не выполняется какое-то условие] - input красный, пользователь видит сообщение что не так с инпутом.

Подумываю может стоит сделать явно лимит без возможности вводить данные если какое-то условие не выполняется, например: лимит более 10 символов? не вводим данные.
Правда, меня напрягает то что вместо v-model="inputValue" скорее всего, придется перевести на формат:

// input template
:value="inputValue" @input="onInput"
// script
function onInput (e) {if (condition) ) inputValue.value = e.target.value }

- стоит ли делать вообще так?
- может есть какие-то best practies / статья именно по этой теме?
- vue3

11 ответов

28 просмотров

Сложна. Есть пара общепринятых либок (vuelidate, vee-validate) но как по мне «шо то …, шо это …, и это обе … такие что … я … … …» ((с) Эскобар). А если писать свои лесапеды, то кто-то точно наедит на то что исспользуюются не типовые решения, а городится свой огород🥲

Black_Yuzia-Yuzia Автор вопроса
Артем 🇺🇦 Бондаренко
Сложна. Есть пара общепринятых либок (vuelidate, v...

а у vuealidate и/или vee-validate есть возможность ограничивать ввод данных?

Лучше написать в красном сообщении (или тултип) о том что введите от x до y, разрешенные символы такие-то. Это лучше чем насильно обрезать имхо. Например, большая часть инпутов для телефонов ломается при автозаполнении, и это люто бесит, когда вставляешь из буфера, а оно само «+78926…»

Валидировать итоговую строку можно на ивенте @keypress, который идет до @input. Если строка не соответствует условиям, то запускаем event.preventDefault()

Nikita Vologzhin
Валидировать итоговую строку можно на ивенте @keyp...

А оно на вставку мышкой (через контекстное меню) точно тригернет?)

Black_Yuzia-Yuzia Автор вопроса
Дмитрий Кузнецов
Лучше написать в красном сообщении (или тултип) о ...

Ну, тут еще нюанс есть. Вот есть например поле для ввода, а там формат: 2 буквы + 6 цифр Я бы сказал что удобно сразу ограничивать ввод, пропускать только 2 буквы, а потом 6 цифр, а буквы блочить

Black_Yuzia Yuzia
Ну, тут еще нюанс есть. Вот есть например поле для...

Такая техника гуглится по masked input, норм для всяких там купонов, серий паспортов

Black_Yuzia-Yuzia Автор вопроса
Дмитрий Кузнецов
Такая техника гуглится по masked input, норм для в...

да, как раз паспорт. Я так понимаю там просто указывается формат по типу: X{2}Y{6} (ну для примера чисто) и оно само ограничивает все?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта