1. 程式人生 > 實用技巧 >【vue】頁面中點選提交時需要驗證兩個表單?

【vue】頁面中點選提交時需要驗證兩個表單?

第一種方法:通過promise.all()進行同步驗證

submitForm(formName1,formName2){
            let that =this
    //  兩個表單驗證    
            let p1 = new Promise((resolve, reject) => {
                this.$refs[formName1].validate( valid => {
                    if(valid) {
                        resolve()
                    }
                })
            })
            let p2 
= new Promise((resolve, reject) => { this.$refs[formName2].validate( valid => { if(valid) { resolve() } }) }) // 兩個表單驗證通過:寫業務程式碼 Promise.all([p1, p2]).then(function
(results){ // 就在這裡寫     }).catch(function(err){ console.log(err); }); },

第二種方法:通過promise.all()進行同步驗證

submitForm(formName1,formName2){   
    let that = this;  
    that.$refs[formName1].validate((valid) => {
        if (valid) {
            this.FormValid1 = true
} }); that.$refs[formName2].validate((valid) => { if (valid) { this.FormValid2 = true } }); if (this.FormValid1 && this.FormValid2 ) { } },