Sto cercando di creare un sito Web che utilizzi l'autenticazione della posta elettronica per gli utenti. Tuttavia, ogni volta che provo ad accedere o ad accedere a un utente, la funzione firebase.auth(). OnAuthStateChanged si attiva, ma non riconosce che un utente ha effettuato l'accesso o registrato. Questo è il mio codice attuale. So che funziona perché mi avviserà, "Nessun utente!" dopo ogni accesso o registrazione e perché posso accedere alla mia console Firebase e vedere che l'utente ha effettuato l'accesso. Se qualcuno sa come risolvere questo problema, lo apprezzerei!firebase.auth(). OnAuthStateChanged Non funziona
Grazie!
Codice:
function initApp() {
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
alert("Signed in user!")
} else {
alert("No user!")
}
});
}
window.onload = function() {
initApp();
};
CODICE PER ACCESSO & ISCRIZIONE:
function toggleSignIn() {
if (firebase.auth().currentUser) {
alert("Sign out")
firebase.auth().signOut();
// [END signout]
} else {
var email = document.getElementById('email').value;
var password = document.getElementById('pass').value;
if (email.length < 4) {
alert('Please enter an email address.');
return;
}
if (password.length < 4) {
alert('Please enter a password.');
return;
}
// Sign in with email and pass.
// [START authwithemail]
firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// [START_EXCLUDE]
if (errorCode === 'auth/wrong-password') {
alert('Wrong password.');
} else {
console.error(error);
}
// [END_EXCLUDE]
});
// [END authwithemail]
}
}
function handleSignUp() {
var email = document.getElementById('semail').value;
var password = document.getElementById('spass').value;
if (password.length < 6) {
alert('Password must be 6 characters or more!');
return;
}
// Sign in with email and pass.
// [START createwithemail]
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// [START_EXCLUDE]
if (errorCode == 'auth/weak-password') {
alert('The password is too weak.');
} else {
console.error(error);
}
// [END_EXCLUDE]
});
// [END createwithemail]
}
puoi inserire altro codice ... ??? per capire come e quando fai il login e accedi – Ymmanuel
l'ho aggiunto alla domanda originale. Entrambe le funzioni vengono attivate tramite clic sui pulsanti. – Collin
Sembra che questo sia un problema comune con nessuna risposta al momento ...:/http://stackoverflow.com/questions/37504466/firebase-auth-createuserwithemailandpassword-undefined-is-not-a-function – Collin