繁体   English   中英

从Firebase Web检索数据

[英]Retrieving data from Firebase Web

一直在尝试多种不同的方法来使其正常工作。 目的是要有一个欢迎框,如果用户以前见过它,它不会出现。 如果数据库中的活动字段显示为1,则欢迎div应该不可见。

document.onload = function() {
  var active
  var user = firebase.auth().currentUser;
  var uid;

  if (user != null) {
    uid = user.uid;
  }

  firebase.database().ref("Users/" + uid + '/Active').on("value", function(snapshot) {
    snapshot.forEach(function(childSnapshot) {
      var active = childSnapshot.val();
      if (active = 1) {
        document.getElementById("welcome").style.display = "none";
        document.getElementById("box").style.display = "none";
        document.getElementById("title").style.display = "none";
        document.getElementById("text").style.display = "none";
      }
    });
  });
};

在此处输入图片说明

预先感谢您的任何帮助或建议。

您需要读取对象的属性-childSnapshot.val()。active。

顺便说一句,您正在反向进行此操作。 如果用户不在数据库中,则要显示欢迎卡。 如果用户在数据库中,则他们可能已经与该应用程序进行了交互并看到了欢迎卡。

欢迎卡应该由CSS display: none隐藏display: none因此不会在页面加载时闪烁或完全显示。

在我看来,请使用布尔值,本机的truefalse (注意,单词周围不带引号)而不是1或0。 在脚本顶部初始化var showWelcomeCard = false

一旦确定要出示欢迎卡,请出示; 并非相反。

最后,不要以为他们不想再看到欢迎/开始卡。 给他们一个选择。 一个复选框,上面显示“不再显示”。 因此,将属性从active更改为showWelcomeCard

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM