如果需要校验的数据类型是对象,且需要校验对象中的每一个属性,此时需要通过嵌套规则分配给 rules 的 fields 属性来校验属于 object 或 array 类型的校验规则。 对object 的深度监听: const rules ={ address: { type:'object', required:true, fields: { street: { type:'string', required:true}, city: { ...
如果检查是同步的,您可以直接返回false或Error或Error Array。 source:传递给validate方法的源对象。 options: 其他选项。 options.messages:包含验证错误消息的对象将与defaultMessages深度合并。 传递给validate或asyncValidate传递给验证函数的选项,以便您可以在验证函数中引用瞬态数据(例如模型引用)。但是,保留了一些选项...
import Schema from 'async-validator'; // 定义校验规则 const rules = { items: { type: 'array', required: true, defaultField: { type: 'object', required: true, fields: { name: { type: 'string', required: true, }, weight: { type: 'number', required: true, }, }, }, }, };...
关于asyncMap函数,首先它判断options.first是否为真值,若为真值,调用asyncSerialArray处理series数组,当某一规则校验失败时,即终止校验,执行callback回调。若options.first为否值,构建next函数包装callback,目的是将所有校验器的失败文案合二为一,在传入callback回调中;再根据options.firstFields是否为真值,分别执行asyncSer...
如果校验是同步的,则可以直接返回false、Error或Error Array。 source: 传给validate 方法的源对象。 options: 额外选项。 用法一 { // 可以把它看出校验规则的另外一种写法,最开始的是对象形式 name(rule, value, callback, source, options) { const errors = [] if (value != "muji") { errors.push(...
callback:校验完成时的回调,传入 Error 或ErrorArray 表示校验失败,不传即为成功 如果校验是同步的直接返回 false 或Error/ErrorArray 也可以 source:校验对象 options:配置项,属性如下 messages:校验错误提示信息,会被合并到默认的提示信息中 asyncValidator {Function}:自定义异步校验函数,参数同 validator validate...
avatar: {type:"array"}, } 基础校验: 使用使用方式详见async-validator 文档 复制 importasyncValidatorfrom'async-validator' import{ Message }from'element-ui' constrecord = { name:'默认产品', descr:'测试', role:4, groupId:2, key:'@10c61f1a1f47', ...
array - 是数组,使用 Array.isArray 验证。 object - 是一个对象而且不是数组对象。 enum - 值必须存在于枚举中。 date - 值必须是由日期确定的有效值。 url - 是一个 url 类型。 hex - 十六进制。 email - 必须是 email 类型。 any - 可以为任意类型。
array: '%s is not an %s', object: '%s is not an %s', number: '%s is not a %s', date: '%s is not a %s', boolean: '%s is not a %s', integer: '%s is not an %s', float: '%s is not a %s', regexp: '%s is not a valid %s', ...
formRules () {constdescriptor = {}this.fields.forEach(({prop}) =>{if(!Array.isArray(this.rules[prop])) {console.warn(`prop 为${prop}的 FormItem 校验规则不存在或者其值不是数组`) descriptor[prop] = [{required:true}]return}