UNPKG

el-plus-form

Version:

采用Vue3 + TS,封装的element-plus数据驱动表单组件

141 lines (125 loc) 3.1 kB
/** * 获取通用的校验规则 */ /** * 不能为空 */ export const notNull = [{ required: true, trigger: 'blur', validator: validateInputNotBull }] /** * 必须是数字 */ export const number = [{ type: 'number', message: '请填入数字!' }] /** * 校验验证码 */ export const vCode = [{ required: true, trigger: 'blur', validator: validateValidateCode }] /** * 必须是数字且不为空 */ export const numberNotNull = [ { required: true, message: '不能为空!', trigger: 'blur' }, { type: 'number', message: '请填入数字!' } ] /** * 正整数 */ export const zhengZhengShu = [{ required: true, trigger: 'blur', validator: validateZhengZhengShu }] /** * Double类型 */ export const double = [{ trigger: 'blur', validator: validateDouble }] /** * Double类型且必填 */ export const doubleNotNull = [{ required: true, trigger: 'blur', validator: validateDouble }] /** * 选择 */ export const select = [{ required: true, trigger: 'change', validator: validateSelect }] /** * 级联选择 * @type {[*]} */ export const cascader = [{ required: true, trigger: 'change', validator: validateSelect }] /** * 必须上传 */ export const upload = [{ required: true, trigger: 'change', validator: validateUpload }] /** * 正整数校验 * @param rule * @param value * @param callback */ function validateZhengZhengShu(rule: any, value: any, callback?: any) { if (!/^[1-9]\d*$/.test(value * 1 + '')) { callback(new Error('请输入正整数!')) } else { callback() } } /** * 选择 * @param rule * @param value * @param callback */ function validateValidateCode(rule: any, value: any, callback?: any) { if (value.length !== 4) { callback(new Error('验证码必须是4位!')) } else { callback() } } /** * 选择 * @param rule * @param value * @param callback */ function validateInputNotBull(rule: any, value: any, callback?: any) { if (typeof value === 'undefined' || value === '') { callback(new Error('此项必填!')) } else { callback() } } /** * 选择 * @param rule * @param value * @param callback */ function validateSelect(rule: any, value: any, callback?: any) { if (value === null || typeof value === 'undefined' || value === '' || value.length <= 0) { callback(new Error('请选择!')) } else { callback() } } /** * 上传 * @param rule * @param value * @param callback */ function validateUpload(rule: any, value: any, callback?: any) { if (value === null || typeof value === 'undefined' || value === '' || value.length <= 0) { callback(new Error('请上传!')) } else { callback() } } /** * 小数校验规则 * @param rule * @param value * @param callback */ function validateDouble(rule: any, value: any, callback?: any) { if (!/^\d+(\.(\d{1}|\d{2}))?$/.test(value * 1 + '')) { callback(new Error('小数格式错误(最多两位)!')) } else { callback() } }