FirebaseウェブサイトのJS Authドキュメントによれば、displayNameを取得する方法とdisplayNameを更新する方法のみを示しているため、更新しようとしました。しかし、何かを作成せずに更新するにはどうすればよいのか、それは論理的ではありません。
だから私の質問は、登録時にユーザーのdisplayNameをどのように設定できますか?
function createUser(email, password) {
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function (error) {
error.message.replace(".", "");
alert(error.message + " (" + error.code + ")");
document.getElementById("password").value = "";
});
if (firebase.auth().currentUser != null) {
firebase.auth().currentUser.updateProfile({
displayName: document.getElementById("name").value
}).then(function () {
console.log("Updated");
}, function (error) {
console.log("Error happened");
});
}
}
私はすでにこれを試しましたが、うまくいかないことが証明されています...
心から、ファルーク
リクエストをチェーンする必要があります:
firebase.auth().createUserWithEmailAndPassword(email, password)
.then(function(result) {
return result.user.updateProfile({
displayName: document.getElementById("name").value
})
}).catch(function(error) {
console.log(error);
});`
({displayName:name})を直接使用できませんでした(エディターの構文エラー)。次に、別の方法を見つけました:
UserUpdateInfo updateInfo = UserUpdateInfo();
updateInfo.displayName = name;
result.user.updateProfile(updateInfo);
これはダートにあります(私はFlutterでFirebaseを使用しています)。