비밀번호 체크 수정

This commit is contained in:
yoon 2025-02-27 14:57:36 +09:00
parent ffabb284fa
commit 8b8c9f86fd

View File

@ -68,20 +68,21 @@
:is-alert="passwordcheckAlert" :is-alert="passwordcheckAlert"
@update:data="passwordcheck = $event" @update:data="passwordcheck = $event"
@update:alert="passwordcheckAlert = $event" @update:alert="passwordcheckAlert = $event"
@blur="checkPw" @input="checkPw"
:value="passwordcheck" :value="passwordcheck"
/> />
<span v-if="passwordcheckError" class="invalid-feedback d-block">{{ passwordcheckError }}</span> <span v-if="passwordcheckError" class="invalid-feedback d-block">{{ passwordcheckError }}</span>
<div class="d-grid gap-2 mt-5 mb-5"> <div class="d-flex gap-2 mt-7 mb-3">
<SaveBtn @click="handleNewPassword" /> <BackBtn class=" w-50" @click="handleback"/>
<p v-if="pwErrMsg" class="invalid-feedback d-block mb-0">{{ pwErrMsg }}</p> <SaveBtn class="w-50" @click="handleNewPassword" />
</div> </div>
<p v-if="pwErrMsg" class="invalid-feedback d-block mb-0">{{ pwErrMsg }}</p>
</div> </div>
</template> </template>
<script setup> <script setup>
import { ref } from 'vue'; import { ref, watch } from 'vue';
import $api from '@api'; import $api from '@api';
import commonApi from '@/common/commonApi'; import commonApi from '@/common/commonApi';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
@ -112,7 +113,7 @@
const passwordAlert = ref(false); const passwordAlert = ref(false);
const passwordcheckAlert = ref(false); const passwordcheckAlert = ref(false);
const passwordcheckErrorAlert = ref(false); const passwordMismatch = ref(false);
const { pwhintList } = commonApi({ const { pwhintList } = commonApi({
loadPwhint: true, loadPwhint: true,
@ -127,6 +128,13 @@
router.push('/login'); router.push('/login');
} }
//
watch([password, passwordcheck], () => {
if (passwordcheck.value !== '') {
checkPw();
}
});
// , , , member input // , , , member input
const handleSubmit = async () => { const handleSubmit = async () => {
userCheckMsg.value = ''; userCheckMsg.value = '';
@ -153,13 +161,13 @@
} }
}; };
const checkPw = async () => { const checkPw = () => {
if (password.value !== passwordcheck.value) { if (password.value !== passwordcheck.value) {
passwordcheckError.value = '비밀번호가 일치하지 않습니다.'; passwordcheckError.value = '비밀번호가 일치하지 않습니다.';
passwordcheckErrorAlert.value = true; passwordMismatch.value = true;
} else { } else {
passwordcheckError.value = ''; passwordcheckError.value = '';
passwordcheckErrorAlert.value = false; passwordMismatch.value = false;
} }
}; };
@ -168,8 +176,10 @@
pwErrMsg.value = ''; pwErrMsg.value = '';
passwordAlert.value = password.value.trim() === ''; passwordAlert.value = password.value.trim() === '';
passwordcheckAlert.value = passwordcheck.value.trim() === ''; passwordcheckAlert.value = passwordcheck.value.trim() === '';
checkPw(); checkPw();
if (passwordAlert.value || passwordcheckAlert.value || passwordcheckErrorAlert.value) {
if (passwordAlert.value || passwordcheckAlert.value || passwordMismatch.value) {
return; return;
} }
@ -192,6 +202,5 @@
toastStore.onToast('비밀번호가 재설정 되었습니다.', 's'); toastStore.onToast('비밀번호가 재설정 되었습니다.', 's');
router.push('/login'); router.push('/login');
} }
}; };
</script> </script>