cloudfunctions/ClearingRedundantFolders/node_modules/@cloudbase/database/src/validate.ts
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
import {
ErrorCode,
WhereFilterOp,
WhereFilterOpList,
OrderByDirection,
OrderDirectionList,
FieldType
} from './constant'
import { Util } from './util'
import { QueryOption, UpdateOption } from './query'
import { ERRORS } from './const/code'
import { E } from './utils/utils'
import { getType } from './utils/type'
import { Point } from './geo'
import { CenterSphere } from './typings'
import { SYMBOL_GEO_POINT } from './helper/symbol'
const validOptionsKeys = ['limit', 'offset', 'projection', 'order', 'multiple', 'timeout']
/**
* 校验模块
*
* @author haroldhu
* @internal
* multi, upsert, merge
*/
export class Validate {
/**
* 检测地址位置的点
*
* @param point - 经纬度
* @param degree - 数值
*/
static isGeopoint(point: 'latitude' | 'longitude', degree: number) {
if (Util.whichType(degree) !== FieldType.Number) {
throw new Error('Geo Point must be number type')
}
// 位置的绝对值
const degreeAbs = Math.abs(degree)
if (point === 'latitude' && degreeAbs > 90) {
throw new Error('latitude should be a number ranges from -90 to 90')
} else if (point === 'longitude' && degreeAbs > 180) {
throw new Error('longitude should be a number ranges from -180 to 180')
}
return true
}
/**
* 参数是否为整数
*
* @param param - 要验证的参数名
* @param num - 要验证的参数值
*/
static isInteger(param: string, num: number): Boolean {
if (!Number.isInteger(num)) {
throw new Error(param + ErrorCode.IntergerError)
}
后面还有 204 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
