cari

Rumah  >  Soal Jawab  >  teks badan

Mengapakah pengesah bentuk elemen-ui saya tidak boleh dipanggil?

Kod adalah seperti berikut:

**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'}]

Malangnya ia tidak dilaksanakan dan tiada ralat. Saya ingin tahu bagaimana untuk menanganinya.

P粉274161593P粉274161593244 hari yang lalu369

membalas semua(1)saya akan balas

  • P粉187677012

    P粉1876770122024-03-28 09:00:47

    Saya rasa masalahnya mungkin disebabkan oleh baris ini:

    if(!res.code==20000){
      // Some stuff here
    }

    Mungkin sepatutnya:

    if(res.code!=20000){
      // Some stuff here
    }

    !res.code 将始终评估为 truefalse。所以 !res.code==20000 akan sentiasa palsu. Tidak kira apa yang dimasukkan, panggilan balik ralat berikut tidak akan dilaksanakan:

    return callback(new Error('the code is wrong or expired'))

    Berikut ialah demo kecil yang menunjukkan bahawa "bar" sentiasa dicetak

    function simple_if(number) {
      if (!number == 20000) {
        return "foo"
      } else {
        return "bar"
      }
    }
    
    console.log(`res=20000. Expect 'bar': ${simple_if(2000)}`)
    console.log(`res=3. Expect 'foo': ${simple_if(3)}`)
    console.log(`res=0. Expect 'foo': ${simple_if(0)}`)

    balas
    0
  • Batalbalas