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()無法執行。