element-ui的表单验证规则只是简单的规则,很多时候我们需要添加自定义的规则。比如
let checkNumL = (rule, value, callback) => { if (String(value).length !== 11) { return callback(new Error('联系方式必须为11位!')) } else { callback() } }
刚开始写的时候,发现怎么也不能执行最后的验证方法了
if (valid) { if (new Date(this.formList.date1).getTime() > new Date(this.formList.date2).getTime()) { this.$message.error('开始日期必须小于结束日期') return false } else { this.$http(method, url, {}, self.formList).then((data) => { if (parseInt(data.code) === 0) { self.$emit('listrefresh') this.$message({ message: '新增成功', type: 'success' }) this.dialogFormVisible = false } }) } } else { console.log('error submit!!') return false }
这个时候,一定要在自定义规则之后加上else{callback()}
否则,callback不能进行回调。导致validate()无法执行。