vue 實戰表單驗證規則

weixin_34357887發表於2018-06-06

一直想寫這麼個玩意兒的,一直沒有能排起頭。今天剛好測試測出一個bug,是一個關於正整數的表單驗證。

專案需求:附件數量必須是正整數。

原先使用了正則,可能是正則不夠變態,反正例如空陣列,空物件,null,undefined,NaN驗證不了,然後驗證不了000,這是我正則的問題,不過反正我最後推翻了正則,網上還有使用正整數除以1一定會整除來做,也就是 number%1 === 0。可是還是有缺陷因為還得判斷特殊符號和英文字母,你得確定是數字才行,所以得再加一層。最後我都推翻了,為了跟上潮流!使用es6

var number = Number(**)

Number.isInteger(number) && number  > 0


7075759-e9f28edb3b85d833.png

參考element-ui 表單專案程式碼

// 附件總數

attachNum: [           

    { required: true, message: '請輸入附件總數', trigger: 'change' },           

    {             

        validator(rule,value,callback){               

            if(Number.isInteger(Number(value)) && Number(value) > 0){                 

                   callback();               

            }else{                 

                    callback(new Error("請輸入有效數字"));               

            }             

    },             

    trigger: 'blur',           

}]

=====================================================

相關文章