结合element的表单规则方式,需在data的返回中写form和formRules,这里写的自定义规则是要结合formRules,示例如下:
在data函数中写自定义规则的方法,在rules中进行使用
data() {
const validatePhone = (rule, value, callback) => {
if (value === '') {
callback(new Error('请输入手机号'))
} else {
if (!/^1[3456789]\d{9}$/.test(value)) {
callback(new Error('请输入正确的手机号'))
} else {
callback()
}
}
}
return {
model: {
username: '',
nickname: '',
password: '',
phone: '',
email: '',
},
rules: {
username: [{ required: true, message: '请输入账号', trigger: 'blur' }],
nickname: [{ required: true, message: '请输入昵称', trigger: 'blur' }],
password: [{ required: true, message: '请输入密码', trigger: 'blur' }],
phone: [{ required: true, validator: validatePhone, trigger: 'blur' }],
email: [{ required: true, message: '请输入邮箱', trigger: 'blur' },
{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }]
}
}
},