반응형
Vuevalidate 비동기 유효성 검사 결과가 루프로 전환됨
Vue Validate 사용 중
내 vuevlidate에는 다음 항목이 있습니다.
validations: {
user_form: {
email: {required,email, isUnique(value) {
// standalone validator ideally should not assume a field is required
if (value === '') return true;
// simulate async call, fail for all logins with even length
return new Promise((resolve, reject) => {
this.$http.post("v1/user-management/users/email-registeredi",{email:value}).then((res)=>{
console.log("res is ", res);
resolve(true);
},(err)=>{
reject(false)
})
})
}},
role: {required},
password: {required}
}
},
이 경우 특히 오류가 발생했을 때 http 요청의 무한 루프가 생성됩니다.
어디가 잘못됐지?
vue validate가 거부 약속을 잘 처리하지 못하고 무한 루프를 생성하는 경우.
시도해 보세요.async await
Vue validate의 독특한 특징에 대해서는 try and catch returning을 사용합니다.false
에러로
이런 느낌이에요.
validations: {
user_form: {
email: {
required,
email,
async isUnique (value) {
if (value === '') return true
try{
const response = await this.$http.post("v1/user-management/users/email-registeredi",{email:value})
return true;
}
catch(e){
return false;
}
}
}
}
vue 리소스는 이미 "새로운 약속"을 사용하기 때문에 "새로운 약속"을 사용할 필요가 없습니다.이것을 시험해 보세요.
validations: {
user_form: {
email: {required,email, isUnique(value) {
// standalone validator ideally should not assume a field is required
if (value === '') return true;
// simulate async call, fail for all logins with even length
return this.$http.post("v1/user-management/users/email-registeredi",{email:value}).then((res)=>{
console.log("res is ", res);
return true;
},(err)=>{
return false;
});
}},
role: {required},
password: {required}
}
},
언급URL : https://stackoverflow.com/questions/51919375/vuevalidate-async-validation-results-to-a-loop
반응형
'programing' 카테고리의 다른 글
MySQL IFNULL 기타 (0) | 2022.09.05 |
---|---|
함수를 PHP 배열에 저장할 수 있습니까? (0) | 2022.09.05 |
+0과 -0이 같습니까? (0) | 2022.09.05 |
파일이 존재하는 경우 File.exists()가 false를 반환합니다. (0) | 2022.09.05 |
부울 객체를 Java 문자열로 변환하는 최선의 방법 (0) | 2022.09.05 |