Le code est le suivant :
**validateCode:[{validator:(rule, value, callback)=>{ if (!value) { callback(new Error('you have to input code')) } else if(this.radioValue=="mobile"){ validatingCo(this.user.mobile,value).then((res)=>{ if(!res.code==20000){ return callback(new Error('the code is wrong or expired')) } else{ callback() } }) } else{ validatingCo(this.user.email,value).then((res)=>{ if(!res.code==20000){ return callback(new Error('the code is wrong or expired')) } else{ callback() } }) } }, trigger:'blur'}]
Malheureusement, il ne s'exécute pas et il n'y a aucune erreur. Je veux savoir comment y faire face.
Je pense que le problème pourrait être causé par cette ligne :
Cela devrait probablement être :
!res.code
将始终评估为true
或false
。所以!res.code==20000
sera toujours faux. Peu importe ce qui est saisi, le rappel d'erreur suivant ne sera pas exécuté :Voici une petite démo montrant que "bar" est toujours imprimé