2016-05-21 4 views
11

私はFirebaseを試しています(Googleの新しいリリース以降)。 FirebaseのオリジナルバージョンでFirebase(2016)Shallow Query

パラメータshallow=trueが実際のことを要求されました(ので、子供が返されるのではなく、あなただけ知っているだろうツリー/ブランチのルートですべてのkeyため{ key: true }を持つオブジェクトを返します子どもがいる)。これは、子ノードのすべてのデータを必ずしも必要としないため(特にたくさんある場合)、便利です。

Googleの新しいバージョンのFirebaseでこれを行う方法はありますか?ヌル

firebase.database().ref('/data/?shallow=true').once('value', function(snapshot) { 
    // do something with snapshot 
} 

上記のコードのsnapshot.val()戻り、私が正しくthe docsを読んでいるならば、この機能がなくなっているようだ:私は何かなどを考えています。

答えて

23

Firebase Database 2.xの?shallow=trueパラメータは、REST APIでのみ使用できました。 https://www.firebase.com/docs/rest/guide/retrieving-data.html#section-rest-uri-paramsを参照してください。

新しいFirebaseデータベース3.xでは、同じパラメータがREST APIでのみ使用できます。 https://firebase.google.com/docs/database/rest/retrieve-data#shallow

このパラメータをサポートしていないFirebase SDK(見た目からJavaScript)を使用しています。過去にこのことを議論してきた多くの質問については

、以下を参照してください

+4

は、これを変更する予定はありますか?常にノードのすべての子孫をダウンロードする必要がある場合、効率的な値リスナーを作成することは非常に困難です。 – chetbox

+2

iOS SDKに浅いオプションを追加することもリクエストしたいと思います。私のデータベースには150万以上のアイテムがあります。 – FlatDog

+1

@フランク・ヴァン・プフレン、感謝の返事。 Firebase SDKに浅いクエリを追加する予定はありますか?また、過去に追加されていなかった理由はありますか? – Rbar

関連する問題