validate.ts
1.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
export const isValidUsername = (str: string) =>
['admin', 'editor'].indexOf(str.trim()) >= 0
export const isExternal = (path: string) => /^(https?:|mailto:|tel:)/.test(path)
// 账号验证
export const validateAccounts = (
rule: any,
value: string,
callback: Function
) => {
let accountreg = /^[A-Za-z0-9]{3,20}$/
if (!accountreg.test(value)) {
callback(new Error('账号必须由数字、字母,请输入3-20位'))
} else if (value === undefined || value === '') {
callback(new Error('请输入账号'))
} else {
callback()
}
}
// 名字验证
export const validateName = (rule: any, value: string, callback: Function) => {
let namereg = /^[\u0391-\uFFE5A-Za-z0-9]{1,12}$/
if (!namereg.test(value)) {
callback(new Error('请输入1-12位'))
// value = value.substring(0,12)
} else if (value === undefined || value === '') {
callback(new Error('请输入名称'))
} else {
callback()
}
}
//
export function validatePhone(rule: any, value: any, callback: any) {
const reg = /^[1][3-9][0-9]{9}$/
if (value === '' || value === undefined || value === null) {
if (rule.required) {
callback(new Error('请输入电话号码'))
} else {
callback()
}
} else {
if (!reg.test(value) && value !== '') {
callback(new Error('请输入正确的电话号码'))
} else {
callback()
}
}
}
// 上传
export const importFilexml = (
file: any,
obj: any,
callback: any,
func: any
) => {
if (file.size < 10100000) {
let fileName = file.name
let suffix = fileName.substring(fileName.lastIndexOf('.') + 1).toUpperCase()
if (suffix === 'xml' || suffix === 'XML') {
return true
} else {
let tipType = '文件类型不正确,请重新上传'
callback(tipType)
return false
}
} else {
let tipSize = '文件大小超过10M,请重新上传'
callback(tipSize)
return false
}
}