@smartbe

Маска для веб-компонента инпута?

Как лучше сделать маску для переиспользуемого компонента инпута на чистом джаваскрипте?

1). Передавать 2 атрибута. Один это паттерн, другой это расшифровка к нему. Пример паттерна: 11-11-22. Пример расшифровки: 1 это [a-z]

2). Передавать паттерн и регулярное выражение (каждый раз придётся прописывать много логики для него

3). Какие то другие варианты?
  • Вопрос задан
  • 52 просмотра
Пригласить эксперта
Ответы на вопрос 1
@v__V__v
Разработчик
Если я правильно понимаю вопрос, то вы решили объять необъятное: сделать универсальную маску на все случаи жизни. Сомневаюсь, что это облегчит вам жизнь, тем более, что уже есть много достаточно универсальных и удобных готовых решений, но раз вы спрашиваете, вам это зачем-то нужно)
Я бы порекомендовал использовать первый вариант с 2 атрибутами. Причина - это самый естественный и универсальный вариант. Вы один раз убьете уйму времени на написание и отладку, но потом будет достаточно передать шаблон и расшифровку. Второй вариант предполагает постоянное написание регулярок, что делает идею почти бесполезной. Другие варианты тоже не лучше. Например, использовать фиксированный набор управляющих символов и классов - это по сути все сведет к все тому же написанию регулярки вручную, которое присутствует в js нативно)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы