![](/img/trans.png)
[英]How to call .isNewUser() in authStateObserver in firebase
[英]How can I access isNewUser of email account in Firebase with Firebase UI?
當前,此代碼生成Firebase錯誤消息,提示“無法獲取未定義或空引用的屬性'isNewUser'”。 如何解決此問題,即如何確定用戶是否是登錄的新用戶?
var uiConfig = {
signInSuccessUrl: false,
signInOptions: [
firebase.auth.EmailAuthProvider.PROVIDER_ID
],
tosUrl: '',
'credentialHelper': firebaseui.auth.CredentialHelper.NONE,
privacyPolicyUrl: function() {
window.location.assign('');
},
'callbacks': { 'signInSuccess': function(user, credential, redirectUrl) {
if (user) {
var displayName = user.displayName;
var email = user.email;
var emailVerified = user.emailVerified;
var photoURL = user.photoURL;
var uid = user.uid;
var phoneNumber = user.phoneNumber;
var providerData = user.providerData;
user.getIdToken().then(function(accessToken) {
$("#message").text(uid);
});
if(firebase.auth.AdditionalUserInfo.isNewUser) {
db.collection("users").doc(uid).set({
firstName: displayName
});
}
} else {
$("#message").text('signed out');
}
return false;
}
}
}
您必須使用signInSuccessWithAuthResult
中介紹回調V2.7.0
var uiConfig = {
callbacks: {
signInSuccessWithAuthResult: function(authResult, redirectUrl) {
var user = authResult.user;
var credential = authResult.credential;
// Determine if user is new or existing.
var isNewUser = authResult.additionalUserInfo.isNewUser;
var providerId = authResult.additionalUserInfo.providerId;
var operationType = authResult.operationType;
return false;
},
...
},
...
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.