231 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			231 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
| /**
 | |
|  * Validate v1.0.0 通用验证
 | |
|  * @description 项目中用到的表单验证规则
 | |
|  */
 | |
| import test from '@/sheep/helper/test.js';
 | |
| 
 | |
| // 手机号
 | |
| export const mobile = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入手机号',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (!test.mobile(value)) {
 | |
|           callback('手机号码格式不正确');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 账户
 | |
| export const account = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入账号',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (value.length < 5) {
 | |
|           callback('账号长度不能小于5位');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 密码
 | |
| export const password = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入密码',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (!/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]+\S{5,12}$/.test(value)) {
 | |
|           callback('需包含字母和数字,长度在6-12之间');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 昵称
 | |
| export const username = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入用户名',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (value.length < 5) {
 | |
|           callback('用户名长度不能小于5位');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 短信验证码
 | |
| export const code = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入验证码',
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 真实姓名
 | |
| export const realName = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入姓名',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (!test.chinese(value)) {
 | |
|           callback('请输入汉字');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| export const taxName = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入发票抬头名称',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (!test.chinese(value)) {
 | |
|           callback('请输入汉字');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 税号
 | |
| export const taxNo = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入税号',
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 开户行
 | |
| export const bankName = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入开户行',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (!test.chinese(value)) {
 | |
|           callback('请输入汉字');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| // 银行卡号
 | |
| export const bankCode = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入银行卡号',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         if (!test.number(value)) {
 | |
|           callback('请输入正确账号');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| // 支付宝账号
 | |
| export const alipayAccount = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入支付宝账号',
 | |
|     },
 | |
|     {
 | |
|       validateFunction: function (rule, value, data, callback) {
 | |
|         let isEmail = test.email(value);
 | |
|         let isMobile = test.mobile(value);
 | |
| 
 | |
|         if (!isEmail && !isMobile) {
 | |
|           callback('请输入正确账号');
 | |
|         }
 | |
|         return true;
 | |
|       },
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| export const consignee = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入收货人姓名',
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| export const region = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请选择您的位置',
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| export const address = {
 | |
|   rules: [
 | |
|     {
 | |
|       required: true,
 | |
|       errorMessage: '请输入详细地址',
 | |
|     },
 | |
|   ],
 | |
| };
 | |
| 
 | |
| export default {
 | |
|   mobile,
 | |
|   alipayAccount,
 | |
|   bankCode,
 | |
|   bankName,
 | |
|   realName,
 | |
|   password,
 | |
|   code,
 | |
|   account,
 | |
|   consignee,
 | |
|   address,
 | |
|   region,
 | |
|   taxNo,
 | |
|   taxName,
 | |
| };
 |