【发布时间】:2021-10-06 04:04:13
【问题描述】:
我在每个 if() 语句之前以及在 createUserWithEmailAndPassword 函数之前调用了一个 try catch,并且 catch 永远不会起作用,并且确实会发生错误。也可以通过从firebase docs 复制代码,它也不起作用。
我做错了什么?我想捕获“auth/email-already-in-use”错误代码(和任何其他)。
我添加了没有 try-catch 的代码。
btnInitialRegister.addEventListener('click', (e) => {
load(strRegisterForm);
hideInitial();
const registerForm = document.querySelector('#registerForm');
const btnRegisterUser = registerForm.querySelector('#userRegisterBtn');
btnRegisterUser.addEventListener('click', e => {
const registerEmail = registerForm.querySelector('#registerEmail');
const registerPassword = registerForm.querySelector('#registerPassword');
const verifyPassword = registerForm.querySelector('#verifyPassword');
e.preventDefault();
if (registerPassword.value.length >= 6) {
if (registerPassword.value == verifyPassword.value) {
auth.createUserWithEmailAndPassword(registerEmail.value,registerPassword.value)
.then(userCredential => {
authUser = userCredential.user.uid;
auth.signOut()
console.log('logged out');
if (authUser) {
setTimeout(function(){registerForm.querySelector('#response').innerHTML += 'Usuario creado con exito. Estas siendo redirigido.'}, 5000);
load(strSignInForm);
}
})
} else {
registerForm.querySelector('#response').innerHTML = 'Las contraseñas no coinciden.'
}
} else {
registerForm.querySelector('#response').innerHTML += 'Las contraseñas deben tener un minimo de 6 caracteres.'
}
})
});
【问题讨论】:
标签: javascript firebase firebase-authentication try-catch