2017-01-09 50 views
0
messageRef1.on("child_added", function(snap) { 
    console.log(snap.val()); 
    mylat=snap.val(); 
}) 

document.write(mylat); 

控制檯打印出正確的數據,我甚至可以在該函數中使用document.write,但是我無法在代碼中的任何其他地方使用數據。 我明白這可能是因爲Firebase異步工作,基本上其餘代碼不會等待Firebase。我看到這個How can i access firebase variable outside firebase function 但我不明白我可以簡單地在這裏實現的東西。 謝謝訪問firebase捕捉函數之外的變量

回答

0

我想我找到了解決我自己的問題。任何需要firebase的函數都可以在(snap)中調用。所以在這種情況下,我可以

messageRef1.on("child_added", function(snap) { 
     console.log(snap.val()); 
     mylat=snap.val(); 
     writeIt();//only calls after firebase loads 
    }) 

function writeIt(){ 
    document.write(mylat);