【vue】頁面中點選提交時需要驗證兩個表單?
阿新 • • 發佈:2020-10-22
第一種方法:通過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 ) { } },