/* 驗證規(guī)則 */
let checkNumber = (rule, value, callback) => {
if (!value) {
return callback(new Error('預(yù)存款不能為空'));
}
setTimeout(() => {
if (!Number.isInteger(Number(value))) {
callback(new Error('請輸入數(shù)字值'));
}
/*
else {
callback()
}
*/
/* callback()必須得執(zhí)行到,所以要打開 */
}, 100);
};
解釋:
因為最開始直接刪掉了else中所有內(nèi)容,在執(zhí)行 this.$refs[formName].validate((valid) => {}) 時候,內(nèi)部代碼一直不會執(zhí)行,最后發(fā)現(xiàn)在自定義驗證里面每一個判斷都要有callback(),就是要保證callback()一定會執(zhí)行到。
解決方法:
在自定義驗證里面每一個判斷都要有callback(),就是要保證callback()一定會執(zhí)行到