rek*_*irt 2 firebase angularfire
我目前正在尝试通过AngularFire $set()方法向Firebase添加新用户.我正在通过$createUserAngularFire 的方法创建新用户.我的代码看起来像这样:
$scope.createUser = function() {
$scope.auth.$createUser('dolly@gmail.com', 'password').then(function(user, err) {
if (err) {
console.log('ERROR: ' + err);
} else {
sync.$set('users', user);
}
});
}
Run Code Online (Sandbox Code Playgroud)
这是一个创建新用户并将新用户对象放在用户内部:{..},但是,它还添加了一个仅复制数据的附加用户子对象 - 这是代码添加到Firebase的内容:
{
"users": {
"email": "dolly@gmail.com",
"id": "11",
"isTemporaryPassword": false,
"md5_hash": "xxxxxxxxxxxxxxx",
"provider": "password",
"sessionKey": "xxxxxxxxxxxxx",
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE0MDc5NDQ2NDYsInYiOjAsImQiOnsicHJvdmlkZXIiOiJwYXNzd29yZCIsImlkIjoiMTEiLCJ1aWQiOiJzaW1wbGVsb2dpbjoxMSIsImVtYWlsIjoiZG9sbHlAZ21haWwuY29tIiwibWQ1X2hhc2giOiIzsdrggfeedsaadrfcDc0ZDRhMTU5NTk2NzI1NzFmMDk2ZTZlNyIsImlzVGVtcG9yYXJ5UGFzc3dvcmQiOmZhbHNlLCJzZXNzaW9uS2V5IjoiM2MwMDNjODkxMDEzOWE5MjhlZTZjNWI1NjU5ZTRiZjMifSwiaWF0IjoxNDA3ODU4MjQ2fQ.p7-9GDtaNpBn1ICTLIUSwlPytaUGi-jyBgcO-LKHUys",
"uid": "simplelogin:11",
"user": {
"email": "dolly@gmail.com",
"id": "11",
"isTemporaryPassword": false,
"md5_hash": "xxxxxxxxxxxxxxx",
"provider": "dfrggrssxxxxxxx",
"sessionKey": "xxxxxxxxxxxxxxx",
"uid": "simplelogin:11"
}
}
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望我的用户对象看起来像firebase中的示例,除非每个用户键都是内部的 user.uid
users: {
user1: {
name: "Alice"
},
user2: {
name: "Bob"
}
}
Run Code Online (Sandbox Code Playgroud)
将每个新用户添加到users: {...}密钥而不添加重复用户子项的位置?
如果您创建一个引用users/然后调用$set该路径,那么您包含的任何数据都将替换该路径上的任何内容.这是AngularFire 101.如果不是整个指南,您应该首先阅读至少该部分.
选择创建同步对象时要在其中设置数据的路径.
var ref = new Firebase('.../users/'+user.uid);
var sync = $firebase(ref);
sync.$set({ email: user.email, provider: user.provider });
Run Code Online (Sandbox Code Playgroud)
或者,更好的是,只需将其设置在引用上,因为您没有将其用于客户端绑定.
var ref = new Firebase('.../users/'+user.uid);
ref.set({ email: user.email, provider: user.provider });
Run Code Online (Sandbox Code Playgroud)
创建配置文件在Firebase文档中进行了解释,并在AngularFire-Seed repo的createProfile服务中进行了介绍,几乎完全按照您的示例进行操作.
| 归档时间: |
|
| 查看次数: |
3482 次 |
| 最近记录: |