参数类, 用来获取标准化的参数对象
const Params = require('@hive/params');
var params=new Params( [ param1 , param2 , ... ] , config );
new Params( [ Object param , ... ] , Object config )
Object param
name
String : 参数名
type
@hive/datatypes的Type对象, 参见@hive/datatypes
getter
Function | false : 默认值为false, 启用后会把param.type处理过之后的值给getter进行处理
pattern
RegExp : 验证正则
当不符合正则的时候此参数会抛弃, 即此参数值为空
description
String : 参数描述, 推荐给出
Object config
parser
Function : 设置后会把处理完之后的参数结果传递给parser二次处理做为结果
某些需要配合使用的参数, 例如start_time和end_time这样的参数, 监测合法性不能单独进行, 就需要在parser做额外处理了
注: 返回的结果对象中请勿使用Symbol以及原型链上的属性值, 会影响默认的唯一key的生成
keygen
Function : 参数为标准化后的参数对象, 返回确定参数唯一性的key
parse ( query )
处理query成标准参数
getKey ( query )
处理query成为标准key, key可以确定参数的唯一性
toUsage
获取此params对象的usage, 结果为数组
e.g [ { name: 'id', type: '整型', description: '产品id' } , ... ]