我正在使用Firebase和Angular 2来创建新用户。我想通过为每个新创建的用户添加其他数据来扩展它。在这个例子中,我希望每个新创建的用户都以net worth = 5000
的指定属性开头。所以我的架构看起来像:
email | ''
password | ''
net worth | '5000'
完成Firebase docs后,我找到了save data功能。但是,我不确定如何将set
功能与我的用户名和密码身份验证脚本合并。
以下是基本注册脚本。
signup(){
firebase.auth().createUserWithEmailAndPassword('johncena@nosell.com', 'ucantcme')
.catch(function(error){
console.log(error);
});}
我想知道如何使用此注册实现set
功能,以便为用户添加默认数据。
答案 0 :(得分:4)
您无法在auth区域中保存'net_worth'。为此,您需要在数据库中使用单独的表。例如'用户'。请检查以下代码。
用户创建后,您将获得 UID 。使用该UID将相关数据存储到数据库中。
firebase.auth().createUserWithEmailAndPassword('johncena@nosell.com', 'ucantcme')
.then(function(response) {
console.log(response.uid); // Created user UID
var updates = {};
updates['/users/' + response.uid] = { net_worth : 5000 };
firebase.database().ref().update(updates);
});
这里'用户'是一张新表。