JS CODE
var myFirebaseRef = new Firebase('https://blinding-inferno-7068.firebaseio.com/');
var createdUserRef = myFirebaseRef.child('users').child('createdUser');
$scope.users = $firebaseArray(createdUserRef);
HTML CODE
<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 ..
答案 0 :(得分:4)
让我们来看看你的实际数据:
{
"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);
请注意,如果没有看到用于创建这些用户的代码,那么解释起来有点棘手。因此,如果您编辑您的问题以包含该代码,我会更新我的答案。