vue添加用户校验(element-ui)
data() { var validatePass = (rule, value, callback) => { if (value === '') { callback(new Error('请输入密码')) } else { if (this.form.checkPass !== '') { this.$refs.addForm.validateField('checkPass') } callback() } } var validatePass2 = (rule, value, callback) => { if (value === '') { callback(new Error('请再次输入密码')) } else if (value !== this.form.password) { callback(new Error('两次输入密码不一致!')) } else { callback() } } var checkphone = (rule, value, callback) => { // let phoneReg = /(^1[3|4|5|6|7|8|9]\d{9}$)|(^09\d{8}$)/; if (value === '') { callback(new Error('请输入手机号')) } else if (!this.isCellPhone(value)) { //引入methods中封装的检查手机格式的方法 callback(new Error('请输入正确的手机号!')) } else { callback() } } return {//添加用户的表单对象 form: {}, rules: { username: [ { required: true, message: '请输入用户名', trigger: 'blur' }, { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' } ], password: [ { required: true, message: '请输入密码', trigger: 'blur' }, { validator: validatePass, trigger: 'blur' } ], checkPass: [ { required: true, message: '请输入确认密码', trigger: 'blur' }, { validator: validatePass2, trigger: 'blur' } ], email: [ { required: true, message: '请输入邮箱', trigger: 'blur' }, { type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] } ], mobile: [ { required: true, message: '请输入手机号', trigger: 'blur' }, { validator: checkphone, trigger: 'blur' } ] } } }, methods: {//检查手机号 isCellPhone(val) { if (!/^1(3|4|5|6|7|8)\d{9}$/.test(val)) { return false } else { return true } } }