Библиотека для валидации, используемая для реализации логики проверки любых форм. Не имеет отношения к страницам, элементам управления или DOM-операциям, представляет собой только логическую часть.
Поскольку в библиотеке отсутствует часть, связанная со страницами, её можно использовать для реализации логики валидации элементов управления формами на различных платформах, таких как React Native, Weex и мини-программы WeChat. Это позволяет легко интегрировать библиотеку с шаблонами для создания сложных проверок форм.
В среде Webpack:
npm install git://github.com/laden666666/my-validation --save
Затем просто используйте require для импорта:
var myValidation = require("my-validation");
Если вы работаете в веб-среде, просто импортируйте файл my-validation.js или my-validation.min.js с помощью тега script.
myValidation.validation(ruleStringString, valueString, isStringPath)
Параметр | Описание параметра |
---|---|
ruleStringString | Строка правил |
valueString | Проверяемая строка |
MyValidation.validation(ruleStringJson, values, isStringPath)
Параметр | Описание параметра |
---|---|
ruleStringJson | Набор строк правил |
values | Набор проверяемых строк |
isStringPath | Использовать ли метод _.property из lodash для дочерних объектов пути |
Примечание:
Пример:
var result = myValidation.validation("required;sizeMax[16]", "test");
или:
var result = myValidation.validation({
"user.name" : "required;sizeMax[16]",
},{
user : {
name : "test"
}
},true)
Возвращаемый результат представляет собой массив результатов проверки правил.
myValidation.registerRule(name, validationFn, msg)
Параметр | Описание параметра |
---|---|
name | Имя правила |
validationFn | Функция проверки |
msg | Сообщение об ошибке по умолчанию, может быть строкой или функцией |
Пример:
myValidation.registerRule("minSize", function (value, object, count) {
return !!value && value.length >= parseInt(count);
},function (value, object, count) {
return "最少输入" + count + "个字符数";
});
или:
myValidation.registerRule("integer", function (value, object) {
return !!value && /^[-+]?\d+$/.test(value);
}, "必须是整数");
Примечание:
Иногда требуется динамически генерировать сообщения об ошибках во время проверки вместо использования сообщений по умолчанию. Для этого можно использовать следующий API:
myValidation.result (result, msg)
Параметр | Описание параметра |
---|---|
result | Логический тип, указывающий на успешность проверки (false указывает на неудачную проверку) |
msg | Строковое сообщение об ошибке, которое имеет более высокий приоритет, чем сообщение по умолчанию |
Например:
myValidation.registerRule("returnMsg", function () {
return myValidation.result(false, "自定义错误提示");
}, "此为默认提示,会被覆盖掉");
Результаты проверки представляют собой массив ошибок или JSON-объект с ключом и значением, но невозможно сразу определить, была ли проверка успешной или нет. Можно либо перебирать каждый элемент проверки в поле result и сравнивать их с true, либо использовать функцию анализа:
myValidation.analyseResult (result)
Параметр | Описание параметра |
---|---|
result | Результаты проверки |
Например:
var result = myValidation.validation({
"user.name" : "required;sizeMax[16]",
},{
user : {
name : "test"
}
},true);
result = myValidation.analyseResult(result) //result преобразуется в логическое значение
Параметр | Описание параметра | Пример |
---|---|---|
required | Обязательное поле | required |
minSize | Требуемая длина строки не превышает указанное значение | minSize[5] |
maxSize | Требуемая длина строки не меньше указанного значения | maxSize[5] |
min | Должно быть числовым и не менее указанного значения | min[5] |
max | Должно быть числовым и не более указанного значения | max[5] |
number | Должно быть числом | number |
integer | Должно быть целым числом | integer |
regex | Регулярное выражение | regex[^\S{2,4}$,i] |
phone | Телефон | phone |
mobilePhone | Мобильный телефон | mobilePhone |
mobileOrPhone | Телефон или мобильный телефон | mobileOrPhone |
На данный момент предоставляется только несколько правил, которые автор планирует использовать немедленно. Другие правила могут быть зарегистрированы пользователями с помощью myValidation.registerRule.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )