0
Firebase新手在这里。
在我的控制器我有一个叫currentChallenge
变量,它包含以下$ firebaseObject:
$$conf: {sync: {…}, ref: X, binding: f, listeners: Array(0)}
$id: "gRH2EWGQB6dbejKYap40Z0ea0nz2"
$priority: null
-Kuy9HAfvVIhPhtQraLy:
challenge: {...}
challenger: "gRH2EWGQB6dbejKYap40Z0ea0nz2"
pending: true
timestamp: 1506428920780
__proto__: Object
__proto__: Object
从我的控制器代码如下:
Challenge.lastChallenge(uid, challengeUserId).$loaded()
.then(function (currentChallenge) {
if (currentChallenge.challenger == uid) {
// stuff happens
}
这就是所谓的挑战服务方法:
lastChallenge: function (uid1, uid2) {
var path = uid1 < uid2 ? uid1 + '/' + uid2 : uid2 + '/' + uid1;
return $firebaseObject(userChallengeRef
.child(path)
.orderByChild('timestamp')
.limitToLast(1));
},
我试图访问数据为challenger
,但是我不确定如何做到这一点的$value
似乎并不在对象上工作。
我不能把-Kuy9HAfvVIhPhtQraLy
,因为这取决于我看到的挑战而改变。它也并不总是与$id
相同的价值。
好吧,我该如何将此添加到currentChallenge变量?在添加这个之后,我得到了一个承诺,而不是挑战数据。谢谢你,对不起,如果这个问题似乎愚蠢。 – helpmeplz
添加了一个示例。 –