创建Firebase JS后如何检索用户UID

时间:2020-07-18 23:21:13

标签: javascript firebase firebase-authentication

我正在尝试检索刚使用JavaScript在Firebase中创建的用户的UID。下面是我当前的代码:

firebase.auth().createUserWithEmailAndPassword(email, pass).catch(function(error, data) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  newusercreateduuid = data.user.uid;
  // ...
  console.log(errorCode + '   Error Message: ' + errorMessage);
});

我尝试了各种回调,包括userData,data,user等,但它们都返回null。我似乎无法在网上找到任何东西。我确实找到了另一个使用userData的Stack Overflow帖子,但是为我返回了null。如何检索刚创建的用户的UID?

1 个答案:

答案 0 :(得分:0)

您需要添加以下内容:

您可以访问then方法:

firebase.auth()
.createUserWithEmailAndPassword(email, password)
.then(function(user) 
    // user information is available here...

    
})
.catch(function(error, data) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  newusercreateduuid = data.user.uid;
  // ...
  console.log(errorCode + '   Error Message: ' + errorMessage);
});

此外,如果您需要控制用户日志更改,则可以执行以下操作:

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    // User is signed in.
    var displayName = user.displayName;
    var email = user.email;
    var emailVerified = user.emailVerified;
    var photoURL = user.photoURL;
    var isAnonymous = user.isAnonymous;
    var uid = user.uid;
    var providerData = user.providerData;
    // ...
  } else {
    // User is signed out.
    // ...
  }
});

这将为您提供登录后的用户状态。 Source