element-ui之Form表单验证--自定义方法验证【详细】

2021-06-23 18:05:43 浏览数 (1)

element ui 验证–自定义方法验证-两种验证写法,方法很简单,主要是自定义方法的时候,方法的位置有些新手还掌握不清,这里详细列举一下。

第一种

代码语言:javascript复制
/直接在表单上进行验证
<el-form-item label="跳过行数" prop="ignoreLines"
        :rules="[{ required: true, validator: checkNumber, trigger: 'blur' }]">
 //方法定义在methods中
   checkNumber(rule, value, callback){
    if (!value) {
      return callback(new Error('请输入跳过行数'));
    } else if (!/^[0-9]*$/g.test(value)) {
      return callback(new Error('跳过行数只能输入数字'))
      } else if (value < 0) {
      return callback(new Error('跳过行数不能小于0'))
    }else {
      callback()
    }
},

第二种

代码语言:javascript复制
<el-form-item label="跳过行数" prop="ignoreLines">
  <el-input v-model="form.ignoreLines"></el-input>
</el-form-item>
//统一写在form定义好的rules中;prop对应rules中的名称;
rules: {
  ignoreLines:[
//{required: true, message: '请输入跳过行数', trigger: 'blur'},
{required:true,validator:checkNumber,trigger: 'blur'}
    ]
}
//定义一个checkNum验证方法 直接在data中,与return平级
data() {
  var checkNumber =(rule, value, callback) =>{
    if (!value) {
      return callback(new Error('请输入跳过行数'));
    } else if (!/^[0-9]*$/g.test(value)) {
      return callback(new Error('跳过行数只能输入数字'))
    } else if (value < 0) {
      return callback(new Error('跳过行数不能小于0'))
    }else {
      callback()
    }
  }
}

0 人点赞