通过Firebase

时间:2017-03-05 15:34:50

标签: javascript firebase firebase-realtime-database

我的Firebase数据库中有已知密钥列表

-Ke1uhoT3gpHR_VsehIv
-Ke8qAECkZC9ygGW3dEJ
-Ke8qMU7OEfUnuXSlhhl

不是循环遍历每个密钥以获取其各自对象的快照,而是如何在一个统一的请求中查询每个密钥? Firebase是否提供此功能?

我发现Promise.all()函数看起来很有前途(我发誓没有双关语),但我不确定如何使用标准方式获取firebase数据,如此

var userId = firebase.auth().currentUser.uid;
return firebase.database().ref('/users/' + userId).once('value').then(function(snapshot) {
  var username = snapshot.val().username;
});

感谢您的帮助!

1 个答案:

答案 0 :(得分:13)

正如大卫的评论所暗示的那样:如果这些项目在某种程度上相关,那么您可以构建一个查询来获取它们。

否则这就行了:

    # At the top of your Fastfile; you may need to add "gem 'xcodeproj'" to your Gemfile and then do a bundle install
    require 'xcodeproj'

    def product_bundle_id(scheme)
      project = Xcodeproj::Project.open('path/to/your/xcodeproj')
      scheme = project.native_targets.find { |target| target.name == scheme }
      build_configuration = scheme.build_configurations.first
      build_configuration.build_settings['PRODUCT_BUNDLE_IDENTIFIER']
    end

    lane :testing do
      ["First", "Second", "Third", "Fourth"].each do |scheme_name|
        sigh(app_identifier: product_bundle_id(scheme_name))
      end
    end

请注意,使用单独的请求检索每个项目并不像您想象的那么慢,因为请求都是通过单个连接发送的。有关详细说明,请参阅{{3}}。