需求1:获取到某个输入框内容并判断是否符合规则要求
以电话号为例
<el-input v-model="dataforget.captcha"
placeholder="请输入手机或邮箱验证码"
prefix-icon="el-icon-edit">
</el-input>
let isPhone = /^(?:(?:\+|00)86)?1(?:(?:3[\d])|(?:4[5-7|9])|(?:5[0-3|5-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[1|8|9]))\d{8}$/
if (isPhone.test(this.dataforget.captcha)) { //
}elese{
}
需求2:使用表单并自定义规则
data() {
let validatePass = (rule, value, callback) => {
if (value === '') {
callback(new Error('请再次输入密码'))
// password 是表单上绑定的字段
} else if (value !== this.dataforget.password) {
callback(new Error('两次输入密码不一致!'))
} else {
callback()
}
}
return {
forgetRule: {
phone: [{ required: true, validator: validatePass, trigger: 'blur' }],
}
}}
需求3:使用表单并使用pattern自定义规则
forgetRule: {
captcha: [
{ required: true, message: '电话号码不能为空', trigger: 'blur' },
{
required: true,
pattern: /^1(3|4|5|6|7|8|9)\d{9}$/,
message: '请输入正确的电话号码',
trigger: 'blur',
},
],