JS CODE
var myFirebaseRef = new Firebase('https://blinding-inferno-7068.firebaseio.com/');
var createdUserRef = myFirebaseRef.child('users').child('createdUser');
$scope.users = $firebaseArray(createdUserRef);
网页代码
<ul ng-repeat="user in users">
<li>{{user.uid}}</li>
<li>{{user.email}}</li>
<li>{{user}}</li>
</ul>
我想要的是user.uid和 user.email,但这些东西没有出来。所以我检查了用户对象,这些东西出来了。
{"-Js0q1mWTwK-AZDZyVdc":{"email":"roro7828@gmail.com","uid":"simplelogin:11"},"$id":"simplelogin:11","$priority":null}
如何检索密钥的值?(我的意思是电子邮件的价值和uid的价值)
我是否应该通过放置这样的代码来检索该数据?
{{user.-Js0q1mWtwk-AZDZyVdc.email}}
像这样?太可怕了。
请帮我T_T..
让我们来看看你的实际数据:
{
"users": {
"createdUser": {
"simplelogin:11": {
"-Js0q1mWTwK-AZDZyVdc": {
"email": "roro7828@gmail.com",
"uid": "simplelogin:11"
}
},
"simplelogin:12": {
"-Js0qpcW6jI9Yf3kplCs": {
"email": "ao7828@gmail.com",
"uid": "simplelogin:12"
}
},
"simplelogin:13": {
"-Js0qrEbzYnFOOWtnCbg": {
"email": "do7828@gmail.com",
"uid": "simplelogin:13"
}
}
},
...
}
}
- 您可以通过
new Firebase('https://blinding-inferno-7068.firebaseio.com/').once('value', function(s) { console.log(JSON.stringify(s.val())); }, function(e) { console.error(e); })
或查看应用程序仪表板中的"数据"选项卡来获取此类数据转储。
您的$firebaseArray
包含如下对象:
"simplelogin:11": {
"-Js0q1mWTwK-AZDZyVdc": {
"email": "roro7828@gmail.com",
"uid": "simplelogin:11"
}
},
而且没有孩子email
simplelogin:11
.所以这就是为什么你没有看到那个输出。
看起来您不小心使用$add
操作添加了用户,该操作在上面的示例中创建了"-Js0q1mWTwK-AZDZyVdc"
。相反,您应该使用$save
或仅使用常规的Firebase JavaScript SDK:
ref.child('users/createdUser').child(user.uid).set(user);
请注意,在没有看到用于创建这些用户的代码的情况下进行解释有点棘手。因此,如果您编辑问题以包含该代码,我将更新我的答案。