【发布时间】:2015-01-26 18:23:01
【问题描述】:
我在我的 Angular 应用程序中使用 angularfire 作为后端,但在提取刚刚创建的最后一个帐户的用户 ID 时我需要帮助。
下面是数据库中“登录和身份验证”部分的图像,这是用户 ID 所在的位置。
这是使用用户通过注册表单输入的电子邮件和密码创建新用户的功能。 (user 是一个来自验证函数的对象,该函数在此之前运行)。
$scope.registerNewUser = function(user) {
var ref = new Firebase("https://pie-shop.firebaseio.com/");
ref.createUser({
email : user.email,
password : user.password
}, function(error) {
if (error === null) {
$('#error-message').show().html('Success!').css({color: 'limegreen'});
}
else {
$('#error-message').show()
.html('Something went wrong when trying to create your account, please try again later')
.css({color: 'red'});
}
});
},
$scope.storeUserInfo = function(user, userID) {
var newUser = new Firebase('https://pie-shop.firebaseio.com/' + userID);
}
所以我需要做的是,最好在function(error) if 语句中,获取新创建帐户的用户 ID,并以用户 ID 作为参数调用 storeUserInfo 函数,以便我可以使用它存储用户输入的其他信息。
通过简单地使用$push 将信息存储在数据库中,我无法将用户 ID 与key 匹配以获取相应的信息,因为 Firebase 在推送时会生成唯一键数据进入数据库。 (或者即使使用推送也有聪明的方法吗?如果是这样,请告诉我)。
【问题讨论】:
-
不要在控制器中进行 DOM 操作!
-
我稍后会更改。
标签: angularjs object firebase angularfire