Estou desenvolvendo uma tela de login simples que utiliza o Auth do Firebase. Tentei de varias formas, porém sempre chega no mesmo erro.
acompanhei o vídeo do próprio firebase: Video!
Porém mesmo erro.
O loggout e o create account funciona normal, porém o auth não, então eu coloquei apenas o código de verificação e o SignIn
Quando eu crio uma conta, ele loga automaticamente. Quando eu dou loggout e tento logar novamente, ele mostra o erro: "ignInWithEmailAndPassword failed: First argument "email" must be a valid string."
https://i.imgur.com/yf8THx7.png
Página HTML:
<script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-auth.js"></script>
<div id="login_div" class="main-div">
<h3>Login</h3>
<input type="email" placeholder="E-mail" id="userEmail"/>
<input type="password" placeholder="Senha" id="userPassword"/>
<button id="login">Entrar</button>
<button id="create">Criar conta</button>
</div>
<div id="user_div" class="loggedin-div">
<h3>Seja bem vindo, você está logado</h3>
<p>Bem vindo</p>
<button id="loggout">Loggout</button>
</div>
Arquivo .js
(function () {
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
//get elements
const userEmail = document.getElementById('userEmail');
const userPassword = document.getElementById('userPassword');
const login = document.getElementById('login');
const create = document.getElementById('create');
const loggout = document.getElementById('loggout');
const user_div = document.getElementById('user_div');
//login
login.addEventListener('click', e => {
//get email and pass
const email = userEmail.Value;
const password = userPassword.value;
const auth = firebase.auth();
//sign in
const promise = auth.signInWithEmailAndPassword(email, password);
promise.catch(e => console.log(e.message));
});
//Add a realtime listener
firebase.auth().onAuthStateChanged(firebaseUser => {
if (firebaseUser) {
console.log(firebaseUser);
user_div.classList.remove('hide');
} else {
console.log('not logged in');
user_div.classList.add('hide');
}
});
}());
Aucun commentaire:
Enregistrer un commentaire