通常对form表单的校验都是整体校验:
this.$refs.form.validate( valid => {if (valid) {// 校验通过,业务逻辑代码...}
});
如果需要对表单里的特定一项或几项进行校验,应该如何实现?
业务场景:下图点探测按钮时,只需要校验前四项,后面的表单项不需要校验
Elementui 官网文档截图:
validateField 这个方法接受两个参数,第一参数为数组或者字符串,第二个参数为回调函数
// 点击探测,请求接口
detectionFunc() {let hasError = false;this.$refs.ruleForm.validateField(['ip', 'port', 'user', 'pwd'], err => {if (err) {hasError = true;return;}});if (!hasError) {// 不存在校验不通过的项,请求探测接口...}
}
如果要校验某一项,第一个参数传字符串就可以了。
注意事项:校验多项时,第一个参数传数组,回调函数会触发多次