我正在尝试从Firebase中的“用户”节点检索数据,并将set()中检索到的数据用于另一个节点。具体来说,我想使用我的用户UID来查看哪个"分支"用户所属,然后使用set()
中的值我有以下快照来获取"分支"用户。它会向控制台记录正确的值
_.map(magicNumbers,
function(num) {
return _.find(magicObjects,
function(v) { return v.magic == num }
) || null;
});
返回"分支" value我想在下面的set()
中使用它 var ref = new Firebase("firebase/url");
var authData = ref.getAuth();
var userUID = authData.uid
var userRef = new Firebase("firebase/URL" + userUID);
userRef.once("value", userBranch)
function userBranch(snapshot) {
var data = snapshot.val();
console.log(data.branch);
};
从userBranch函数中取出值的最佳方法是什么,所以我可以在set()中使用它?
答案 0 :(得分:1)
你使用.once
有点不对劲,但你有正确的想法。
var ref = new Firebase("firebase/url");
var authData = ref.getAuth();
var userUID = authData.uid
var userRef = new Firebase("firebase/URL" + userUID);
// Second parameter is callback function that receives data (snapshot)
userRef.once("value", function(snapshot) {)
var data = snapshot.val();
console.log(data.branch);
// Save value at data.branch
var dataBranch = data.branch;
var postsRef = ref.child("Posts");
var newPostRef = postsRef.push();
var postID = newPostRef.key();
// Save it, erasing all previous data at location
postsRef.child(postID).set({
"branch": dataBranch
});
};
你对.once
的第二个参数有点混淆。
参考文献: