Firebase迅速未检索所有子值

时间:2019-02-24 15:10:24

标签: swift firebase firebase-realtime-database

我在Swift内置的iOS应用程序中有一段代码,用于从Firebase Realtime数据库检索所有节点。当我执行以下代码时,我注意到它不会返回所有子节点。

当我查询未单独返回的特定节点时,代码首先返回“ nil”,然后再次尝试检索节点。 (无需在过程中进行任何代码更改)。完成此过程后,该节点便开始使用检索所有节点功能显示在结果中。

示例1:首先返回nil,然后再次尝试返回该节点。从控制台上可以看到它,并且肯定存在于数据库中。

 $.ajax({
       url: "/Popu/GetContainers",
       dataType: "json",
       complete: function (response) {
           var parsedJson = JSON.parse(response.responseText);

           var thead = '', tbody = '';
           //for (var key in parsedJson[0]) {
              // thead += '<th>' + key + '</th>';
           //}
          thead += '<th>ContainerNo</th><th>Size</th><th>SealNo</th><th>Weight</th>';

          $.each(parsedJson, function (i, d) {
             tbody += '<tr><td>' + d.ContainerNo + '</td><td>' + d.Size + '</td><td>' + d.SealNo + '</td><td>' + d.Weight + '</td></tr>';
          });

          callback($('<table style="padding-left:20px;">' + thead + tbody + '</table>')).show();
  }

以下内容用于检索所有子值;最初并不能获得所有节点,但是在运行示例1(两次)中的代码后,它开始返回有问题的节点。

ref?.child("transactions").child(email).child("14526452327").observeSingleEvent(of: .value, with: { (snapshot) in
                // Get user value
                let value = snapshot.value as? NSDictionary
                        print(value)
                        print("!!****************!!")
                // ...
            }) { (error) in
                print(error.localizedDescription)
            }

Here is a screenshot of the Firebase DB structure;

我还检查了我的Firebase查询和数据限制,距离免费帐户的门槛还很遥远。任何帮助是极大的赞赏。

1 个答案:

答案 0 :(得分:0)

尝试一下:

style="@style/Widget.AppCompat.Button.Borderless"