zgg-ui
Version:
2.0.1 正式版本 基于 Vue 3、UniApp 和 TypeScript 开发的多端适配移动端 UI 组件库,旨在提供丰富的组件集合,帮助开发者快速构建多端响应式的移动应用界面
36 lines (31 loc) • 1 kB
text/typescript
// @ts-nocheck
import type { ExecuteValidator } from '../interface'
import rules from '../rule'
import { isEmptyValue } from '../util'
const date: ExecuteValidator = (rule, value, callback, source, options) => {
// console.log('integer rule called %j', rule);
const errors: string[] = []
const validate =
rule.required || (!rule.required && source.hasOwnProperty(rule.field))
// console.log('validate on %s value', value);
if (validate) {
if (isEmptyValue(value, 'date') && !rule.required) {
return callback()
}
rules.required(rule, value, source, errors, options)
if (!isEmptyValue(value, 'date')) {
let dateObject
if (value instanceof Date) {
dateObject = value
} else {
dateObject = new Date(value)
}
rules.type(rule, dateObject, source, errors, options)
if (dateObject) {
rules.range(rule, dateObject.getTime(), source, errors, options)
}
}
}
callback(errors)
}
export default date