egg-ecarx-validate
v1.0.5
Published
参数校验
Downloads
19
Readme
egg-ecarx-validate
增加default属性,在参数不存在、为空字符串时默认参数值
增加参数过滤功能,过滤无关参数,只提取rule里有的参数,实现对参数整体的约束
增加返回值:validate应当只负责校验,不应该对原始对象进行修改,所以校验后产生了 赋值/过滤 的结果 通过返回值返回
Install
$ npm i egg-ecarx-validate --save
Usage
// {app_root}/config/plugin.js
exports.validate = {
enable: true,
package: 'egg-ecarx-validate',
};
Configuration
// {app_root}/config/config.default.js
exports.validate = {
};
Example
//ctx.request.body = {other: '无关参数',str: ""}
let rule = {
//参数是否选填由 required 配置决定,默认是true
//字符串类型参数 为 "" 时、其他类型参数选填但且未填时,可由default配置默认值
num: {type: 'string', required: false, default: 'abc'},
time: {type: 'number', default: Date.now()},
str: {type: 'string', default: undefined} //赋值undefined等同删除
}
let data = ctx.validate(rule)
或 let data = ctx.validate(rule,ctx.request.body)
data: {num: 'abc', time: 152332312312,other: '无关参数'}
let data = ctx.validate(rule,true)
或 let data = ctx.validate(rule,ctx.request.body, true)
data: {num: 'abc', time: 152332312312}