我想从firebase数据库中检索唯一的地址值!
$scope.address = $firebaseArray(fireBaseData.refUser().child($scope.user_info.uid).child("address"));
console.log(address);
答案 0 :(得分:0)
如果您可以包含日志输出和正在使用的输入参数的值,则会有所帮助。
看起来你错过了地址的ID。也就是说,您的代码目前描述了这条路径:
/users/$UID/address/
但你可能想要:
/users/$USER_ID/address/$ADDRESS_ID
完成后,您可以使用once()
函数检索该子树的快照,然后查询其中的值。
例如,
fireBaseData.refUser()
.child($scope.user_info.uid + '/address/')
.child( ADDRESS_ID )
.once('value')
.then(
function(snapshot) {
$scope.address = snapshot.val().address
}
);
如果您不知道ADDRESS_ID,并且您确定在特定UID下只有一个条目,那么您可能会考虑不使用push()函数为其设置唯一ID。但是,如果必须,您可以尝试拉出users/$UID/address/
下面的所有节点并从那里向下钻取,如下所示:
fireBaseData.refUser()
.child($scope.user_info.uid + '/address/')
.once('value')
.then(
function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var addressRecord = childSnapshot.val();
$scope.address = addressRecord.address;
});
}
);