写在rules之前的代码:
var: checkName = (rule, value, callback) => {
if (!value) {
return callback(new Error('请输入名称'));
}
else {
let target = ".json";
let a = value.length - target.length;
let b = value.substr(a, target.length);
if (b === target) {
callback();
} else {
callback(new Error('请输入正确的后缀'));
}
}
},
定义一个自定义的表单验证方法验证element-form中的某个输入框所输入值的后缀,value(输入值) ,checkName(自定义方法名称),callback为el内置方法此处必须调用,target为自定义验证的后缀,b = value.substr(a,target.length)为将value(待验证的输入值)从a开始截断,截取target的长度的字符串赋值给b,将b与target比较达到验证后缀的效果。
写在rule内部的代码:
rules: {
name: [
{validator: checkName, trigger: 'blur'}
]
},
validator为调用自定义的验证方法,对prop为name的输入区域进行验证
效果: