2016-01-14 36 views
0

我正在使用fireproof,這樣我就可以使我的Firebase調用以Promise爲基礎。似乎是一個非常偉大的想法,但我有一個很難從push如何使用Fireproof for Firebase從.push中獲取新生成的密鑰?

firebase = new Firebase("https://mysite.firebaseio.com"); 

fbase = new Fireproof(firebase); 

fbase.child("icm").push(newICM).then(function() { 
    return console.log(KEY???); 
}); 

獲得新生成的key我如何獲得key

回答

2

從我所看到的,Fireproof不會將快照傳遞到then()。但它返回原來的裁判是push()回報,所以你可以做:

var newRef = fbase.child("icm").push(newICM); 
newRef.then(function() { 
    console.log(newRef.key()); 
}); 

請注意,你不能返回一個值,現在還沒有回來,所以return newRef.key()將無法​​正常工作。如果你不能退貨,請退還承諾:return newRef;,然後在被叫做的newRef.then(...

+0

'快照'返回'undefined' – Shamoon

+0

是的。我也看到了。不知道他們是如何通過...檢查...和更新 –

+0

似乎像一個黑客,但我想現在會做 – Shamoon