import { i18n } from '../i18n' export const validators = { // 不能输入特殊字符 能输入中文 notSpecialCharacter: [ { required: true, trigger: 'blur', validator: (rule: any, value: any, callback: any) => { if (value === '') { callback(new Error(i18n.global.t('cannotBeEmpty'))) } else if (/[`~!@#$%^&*()\+=<>?:"{}|,./;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/g.test(value)) { callback(new Error(i18n.global.t('cannotContainSpecialCharacters'))) } else { callback() } } } ], // 不能输入特殊字符 不能输入中文 containNumStr: [{ required: true, trigger: 'blur', validator: (rule: any, value: any, callback: any) => { if (value === '') { callback(new Error(i18n.global.t('cannotBeEmpty'))) } else if (/[`~!@#$%^&*()\-+=<>?:"{}|,./;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/g.test(value) || /[\u4E00-\u9FA5]/.test(value)) { callback(new Error(i18n.global.t('cannotContainSpecialCharactersAndChinese'))) } else { callback() } } }], // 电话 phone: [ { required: true, message: i18n.global.t('pleaseInputCorrectPhoneNumber'), trigger: 'blur', pattern: /^1[345789]\d{9}$/ } ], // 邮箱 email: [ {required: true, message: i18n.global.t('cannotBeEmpty'), trigger: 'blur'}, {type: 'email', message: i18n.global.t('pleaseInputCorrectEmail'), trigger: 'blur'} ], required: [{required: true, message: i18n.global.t('pleaseSelect'), trigger: 'change'}], requiredInput: [{required: true, message: i18n.global.t('pleaseInput'), trigger: 'blur'}] } export const validatorRule = { requiredSelect: {required: true, message: i18n.global.t('pleaseSelect'), trigger: 'change'}, requiredInput: {required: true, message: i18n.global.t('pleaseInput'), trigger: 'blur'}, CN: { pattern:/^[\u4e00-\u9fa5]+$/, message: i18n.global.t('pleaseInputCN'), trigger: 'blur' }, // 不能输入特殊字符 noSpecial: { required: true, trigger: 'blur', validator: (rule: any, value: any, callback: any) => { if (value === '') { callback(new Error(i18n.global.t('cannotBeEmpty'))) } else if (/[`~!@#$%^&*()\+=<>?:"{}|,./;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/g.test(value)) { callback(new Error(i18n.global.t('cannotContainSpecialCharacters'))) } else { callback() } } }, // 不能输入中文 noCN: { required: true, trigger: 'blur', validator: (rule: any, value: any, callback: any) => { if (value === '') { callback(new Error(i18n.global.t('cannotBeEmpty'))) } else if (/[\u4E00-\u9FA5]/.test(value)) { callback(new Error(i18n.global.t('cannotContainCN'))) } else { callback() } } }, // 电话 phone: { message: i18n.global.t('pleaseInputCorrectPhoneNumber'), trigger: 'blur', pattern: /^1[345789]\d{9}$/ }, IP: { message: i18n.global.t('pleaseInputCorrectIP'), trigger: 'blur', pattern: /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/ }, // 邮箱 email: {type: 'email', message: i18n.global.t('pleaseInputCorrectEmail'), trigger: 'blur'}, url: {type: 'url', message: i18n.global.t('pleaseInputCorrectURL'), trigger: 'blur'}, }