Найти в Дзене
Logonok

Маскировка значений - форматируем и украшаем

При работе с веб-приложением ввод данных через формы занимает значительную часть времени, поэтому ограничение допустимых значений уменьшает количество ошибок (опечаток) и, тем самым, ускоряет рабочий процесс. В приложениях, созданных с помощью декларативного фреймворка Evado, для этого используются маски атрибутов. Реализация масок на стороне клиента осуществляется с помощью библиотеки inputmask. В этом репозитории можно найти подробное описание. Маска работает только со строковым представлением. Поэтому, если вы маскируете числовой атрибут, то выберите тип представления «Строка». Параметры маски задаются в опциях атрибута: {"mask": "(999) 99-99-99"} По умолчанию для масок определены следующие свойства: При необходимости их можно переопределить в настройках конкретной маски: {"mask": {"mask": "(999) 99-99-99"}, "clearIncomplete": false} Значение для чтения Если атрибут с маской отображается в режиме чтения, то по умолчанию маска используется для форматирования значения. При необхо
Оглавление

При работе с веб-приложением ввод данных через формы занимает значительную часть времени, поэтому ограничение допустимых значений уменьшает количество ошибок (опечаток) и, тем самым, ускоряет рабочий процесс. В приложениях, созданных с помощью декларативного фреймворка Evado, для этого используются маски атрибутов.

Реализация масок на стороне клиента осуществляется с помощью библиотеки inputmask. В этом репозитории можно найти подробное описание.

Маска работает только со строковым представлением. Поэтому, если вы маскируете числовой атрибут, то выберите тип представления «Строка».

Маска на целое значение в демо-приложении Evado
Маска на целое значение в демо-приложении Evado

Параметры маски задаются в опциях атрибута:

{"mask": "(999) 99-99-99"}

По умолчанию для масок определены следующие свойства:

  • autoUnmask - сохранять значение без маски.
  • clearIncomplete - при потере полем ввода фокуса, стирать значение, если оно не соответствует маски.

При необходимости их можно переопределить в настройках конкретной маски:

{"mask": {"mask": "(999) 99-99-99"}, "clearIncomplete": false}

Значение для чтения

Если атрибут с маской отображается в режиме чтения, то по умолчанию маска используется для форматирования значения. При необходимости можно переопределить формат:

{"mask": "(999) 99-99-99",
"format": {"name": "mask", "params": "999 999 999"}}

Или вообще отменить форматирование:

{"mask": "(999) 99-99-99", "format": null}
Использование маски на значении только для чтения
Использование маски на значении только для чтения

Заключение

Важно помнить, что ограничение ввода маской работает только на стороне клиента. Для проверки входящих значений необходимо использовать валидаторы.

Наглядный пример работы атрибутов с масками можно увидеть в демо-приложении фреймворка Evado.