JavaScript无法访问Once()。then()函数

时间:2020-10-12 13:52:11

标签: javascript variables firebase-realtime-database

我有一段以非常奇怪的方式运行的代码,我不知道为什么

var firebaseConfig = {theConfig};
firebase.initializeApp(firebaseConfig);

var why;
console.log("Why 1:");
console.log(why);

var totalRef = firebase.database().ref('voice/total');
totalRef.once('value').then(function(snapshot){
  why = snapshot.val();

  console.log("Why 2:");
  console.log(why);
});

console.log("Why 3:");
console.log(why);

控制台输出如下:

Why 1:
undefined

Why 3:
undefined

Why 2:
The actual database data..

为什么代码会像这样跳过所有内容,然后再完成。最重要的是,在最后一部分我不理解为什么变量“为什么” 未定义。我在互联网上发现的所有内容是,我必须在函数外部声明变量,但是我做到了,但它不起作用。

0 个答案:

没有答案