校验规则rule-正则

经纬度校验

export const rule = {
    
    
    lon: [{
    
    
        required: true,
        message: '请输入经度',
        trigger: 'blur'
    }, {
    
    
        validator: validateLon,
        trigger: 'blur'
    }, ],
    lat: [{
    
    
        required: true,
        message: '请输入纬度',
        trigger: 'blur'
    }, {
    
    
        validator: validateLat,
        trigger: 'blur'
    }, ],
   
}
const validateLon = async (rule, value) => {
    
    
    console.log(value)
    let logNum = /^(\-|\+)?(((\d|[1-9]\d|1[0-7]\d|0{
    
    1,3})\.\d{
    
    0,5})|(\d|[1-9]\d|1[0-7]\d|0{
    
    1,3})|180\.0{
    
    0,5}|180)$/
    if (!logNum.test(value)) {
    
    
        return Promise.reject('经度范围:-180~180(只支持保留小数点后五位)');
    } else {
    
    
        return Promise.resolve();
    }
};
const validateLat = async (rule, value) => {
    
    
    console.log(value)
    let latNum = /^(\-|\+)?([0-8]?\d{
    
    1}\.\d{
    
    0,5}|90\.0{
    
    0,5}|[0-8]?\d{
    
    1}|90)$/
    if (!latNum.test(value)) {
    
    
        return Promise.reject('纬度范围:-90~90(只支持保留小数点后五位)');
    } else {
    
    
        return Promise.resolve();
    }
};

范围,如:1~999999999

export const rule = {
    
    
    installedCapacity: [{
    
    
        required: true,
        message: '请输入机组容量',
        trigger: 'blur'
    }, {
    
    
        validator: validateCapacity,
        trigger: 'blur'
    }, ],
}
const validateCapacity = async (rule, value) => {
    
    
    console.log(value)
    if (value < 1 || value >= 9999999) {
    
    
        return Promise.reject('机组容量范围:1~999999999');
    } else {
    
    
        return Promise.resolve();
    }
};

自然数

export const rule = {
    
    
    installedCapacity: [{
    
    
        required: true,
        message: '请输入机组容量',
        trigger: 'blur'
    }, {
    
    
        validator: validateCapacity,
        trigger: 'blur'
    }],
}
const validateCapacity = async (rule, value) => {
    
    
    console.log(value)
    let capacity = /^([0]|[1-9][0-9]*)$/
    if (!capacity.test(value)) {
    
    
        return Promise.reject('请输入自然数');
    } else {
    
    
        return Promise.resolve();
    }
};

正整数

let capacity = /^[1-9]\d*$/; // 正整数

手机号或者固定电话验证

const checkPhone = async (rule, value) => {
    
    
    console.log(value)
    let latNum = /^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\d{
    
    8}$|^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\d{
    
    8}$|^0\d{
    
    2,3}-?\d{
    
    7,8}$/
    if (!latNum.test(value)) {
    
    
        return Promise.reject('请输入正确的手机号或者固定电话号码');
    } else {
    
    
        return Promise.resolve();
    }
};

保留两位小数

let logNum = /^([0-9]+[\d]*(.[0-9]{
    
    1,2})?)$/; // 小数保留2位小数

带负符号小数保留2位小数

/^([\-]?[0-9]+[\d]*(.[0-9]{
    
    1,2})?)$/;

带正负符号小数保留2位小数

/^([\-\+]?[0-9]+[\d]*(.[0-9]{
    
    1,2})?)$/

猜你喜欢

转载自blog.csdn.net/Sunshinedada/article/details/119776964