我想在名称字段中使用破折号/连字符
<input v-model="$parent.teacher.firstName" v-validate="'required|alpha|min:2'"
placeholder="Eva" class="bw" type="text" name="firstname"
autocomplete="teacher-firstname"/>
我该怎么做?我试图添加一个正则表达式,例如v-validate中的'^ [a-z] +(-[a-z] +)* $'但什么也没发生
答案 0 :(得分:2)
类似这样的东西:
import { Validator } from 'vee-validate';
Validator.extend('name', {
getMessage: field => 'The ' + field + ' value is not a valid name.',
validate: value => value.test(/^[a-z]+(-[a-z]+)*$/)
});
答案 1 :(得分:1)
您可以考虑将alpha
更改为alpha_dash
。
您可以使用v-validate="{ required: true, regex: /^[a-z]+(?:-[a-z]+)*$/i, min: 2 }"
设置自定义正则表达式:
<input v-model="$parent.teacher.firstName"
v-validate="{ required: true, regex: /^[a-z]+(?:-[a-z]+)*$/i, min: 2 }"
placeholder="Eva" class="bw" type="text" name="firstname" autocomplete="teacher-firstname">