Javascript Firebase v3事务和承诺
我正在为如何在Firebase v3中处理事务而挣扎 我尝试了以下方法:Javascript Firebase v3事务和承诺,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,我正在为如何在Firebase v3中处理事务而挣扎 我尝试了以下方法: function fbTransaction(childRef) { var qTrans = Q.defer(); firebase.database().ref(childRef).transaction() .then(function(success){ qTrans.resolve(success); }).catch(function(error){
function fbTransaction(childRef) {
var qTrans = Q.defer();
firebase.database().ref(childRef).transaction()
.then(function(success){
qTrans.resolve(success);
}).catch(function(error){
qTrans.reject(error);
});
return qTrans.promise;
};
因此,我尝试更新位置childRef
处的值。当我像我一样尝试它时,它不会回报任何承诺。基本上什么也没发生
我还尝试了来自的示例,但对于
post
和success
,好的,我找到了答案。基本上,您可以设置初始值并使用--
减小它
function fbTransaction(childRef) {
var qTrans = Q.defer();
firebase.database().ref(childRef).transaction(function(post) {
if (post != null) {
post++;
} else {
post = 1;
}
return post;
}).then(function(success){
qTrans.resolve();
}).catch(function(error){
qTrans.reject(error);
});
return qTrans.promise;
};