Firebase Multipath获取数据

时间:2017-04-19 01:34:27

标签: javascript firebase firebase-realtime-database

目前,Firebase支持平面数据布局的多路径数据更新。但是,在获取数据时,是否可以使用类似的方法从Firebase中的多个位置获取多路径数据?

例如,我需要将一些数据连接在一起,我当前的代码如下所示:

ref.child('data_1/').once('value', function (snapshot) {
    var test_string_1 = snapshot.val();

    ref.child('data_2/').once('value', function (snapshot) {
        var test_string_2 = snapshot.val();

        //...etc 
    });
});

当必须从多个节点获取数据时,这种嵌套方法非常深入。所以我想知道是否有更好更快的方法,如多路径提取,从多个位置获取数据。

1 个答案:

答案 0 :(得分:5)

如果路径/引用不相互依赖,您可以像这样检索它们:

var test_1 = ref.child('data_1/');
var test_2 = ref.child('data_2/');
Promise.all([
    test_1.once('value'),
    test_2.once('value')
]).then(function(snapshots) {
    var test_string_1 = snapshots[0].val();
    var test_string_2 = snapshots[1].val();
});

请参阅: