我试图使用angularFire中的$child
方法在我的数据库中设置一些信息,但只是意识到它已在0.8版本更新中被完全删除。
然后我通过阅读以下内容来查看更换的内容:
https://www.firebase.com/blog/2014-07-30-introducing-angularfire-08.html
但这并没有说明情况。
如果我遇到这样的情况:
$scope.validate = function() {
//--- Some validation here ---//
var userInfo = {
firstname: $('#firstname').val(),
lastname: $('#lastname').val(),
streetAddress: $('#street-address').val(),
city: $('#city').val(),
zip: $('#firstname').val(),
country: $('#country').val(),
email: $('#email').val(),
password: $('#password').val(),
confirmedPassword: $('#confirmed-password').val()
}
$scope.registerNewUser(userInfo);
},
$scope.registerNewUser = function(userInfo) {
var ref = new Firebase("https://pie-shop.firebaseio.com/");
ref.createUser({
email : userInfo.email,
password : userInfo.password
}, function(error, user) {
if (error === null) {
$scope.storeUserInfo(userInfo, user);
}
else {
console.log(error);
}
});
},
$scope.storeUserInfo = function(userInfo, user) {
var ref = new Firebase('https://pie-shop.firebaseio.com/users/' + user.uid);
var sync = $firebase(ref);
sync.$child(user.uid).set({
firstname: userInfo.firstname,
lastname: userInfo.lastname,
streetAddress: userInfo.streetAddress,
city: userInfo.streetAddress,
zip: userInfo.zip,
country: userInfo.country
});
}
我需要设置一个名为user.uid
的密钥(这是用户的id),并且此密钥应该包含userInfo
对象的信息,我现在该如何做{ {1}}已删除?我一直在寻找几个小时但却找不到任何关于如何在angularFire中专门解释的内容。
发布前留言:
在检查了API文档here之后,它说只使用$child
应该可以正常工作,但就我而言,它也不适用于我。有人能告诉我哪里出错了吗?
答案 0 :(得分:1)
我不完全确定AngularFire的0.8 $child
方法之前做了什么。但它可能与Firebase的常规child
方法有关。
在这种情况下,而不是:
var ref = new Firebase(...);
var sync = $firebase(ref);
sync.$child(user.uid)...
你也可以这样做:
var ref = new Firebase(...).child(user.uid);
var sync = $firebase(ref);
sync...