更新记录

1.1.3(2023-01-13)

新增严格模式

1.1.2(2022-12-19)

更换uni_modules格式

1.1.1(2022-12-19)

查看更多

平台兼容性

阿里云 腾讯云 支付宝云
×

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


更适合mongodb数据或复杂数据格式校验、多维数组校验、多层对象数据校验。

例子

import { validate } from "./validate.js"
/* 
* validate(params,data)
* params 校验参数
* data   需校验的数据
*/
const params = [
  { key: 'a', type: "string" },
  { key: 'b', type: "number" },
  { key: 'c', type: "boolean" },
  { key: 'd', type: "array" },
  { key: 'e', type: "object",object_validate:[
     { key: 'a', type: "string" },
     { key: 'b', type: "number" },
     { key: 'c', type: "boolean" },
     { key: 'd', type: "array" }
  ] },
]
const data = {
  test:{
    a:"1",
    b:0,
    c:true,
    d:["1"],
    e:{
       a:"1",
       b:0,
       c:true,
       d:["1"]
    }
  }
}
const validateFn = validate(params, data)
if (validateFn.code !== 0) {
   return validateFn
}

全部参数

params:key | type | max_length | includes | ArrayString | min_length | ArrayObject | is_int | is_price | requred | object_validate

参数名 类型 必填 说明
key string 校验对象数据的key
type string | array | boolean | number | object 需要校验的类型
max_length number 最大长度
min_length number 最小长度
includes Array number类型中,是否包含指定数值
ArrayString boolean 是否是字符串数组
ArrayObject boolean 是否是对象数组
is_int boolean 是否整数数值
is_price boolean 是否包含小数点后2位的数值
requred boolean 字段是否必传
object_validate 特殊字段:params 值为object时,校验对象中的值类型

String

type值为sting时,可携带参数

参数名 类型 说明
min_length number 控制字符串最小长度,如未填写,‘’空字符串也可通过验证
max_length number 控制字符串最大长度

Number

type值为number时,可携带参数

参数名 类型 说明
min_length number 控制数值最小值
max_length number 控制数值最大值
includes Array 包含指定数值
is_price boolean 是否包含小数点后2位的数值
is_int boolean 是否整数数值

Array

type值为Array时,可携带参数

参数名 类型 说明
min_length number 数组最小长度,如未填写,[] 空数组也可通过验证
max_length number 数组最大长度
ArrayString boolean 是否是字符串数组
ArrayObject boolean 是否是对象数组

Object

type值为object时,可携带参数

参数名 类型 说明
object_validate params 校验对象中的值类型

返回值

// 校验成功
{
  code:0
}
// 校验失败
{
  code:-1,
  msg:"错误信息"
}

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问