2017-10-26 7 views
1

私はデータベースの検索にGoogleのFirestoreを使用しています。論理はソースに名前を付け、各変数のwhere()メソッドを連鎖させることです。 動作するコードの例は次のとおりです。javascript関数への動的連鎖メソッド

var ref = firebase.firestore().collection('myCol'); 
ref.where('myVar1','==',true).where('myVar2','==',5).get() 
.then((results) => {...}) 

私がいる問題は、私は動的にそれらの()メソッドを(それらの数は、それぞれ異なる検索に変更されるように)接続する方法が分からないです。 私はそれの名前を知っていればそれを見つけることができるだろうと思うが、ドット機能はあまり表示されませんでした...どうすればいいですか?下記のキースの返信@から

+0

「ドット機能」とは何ですか? – Tomalak

+1

連鎖は、メソッドがそれ自身または別のオブジェクトを返す場合によくあることです。だから、これを参照してください。たとえば、 'var last = ref.where(..);'、 'last = last.where(..)'など。 – Keith

+3

それに対する答えを提供する。代わりにあなたの答えを書いてください。あなたは2日以内にそれを受け入れることもできます。あなたが答えを探しているなら、質問は間違いなくあなたが探している最初の場所ではありません;) – geisterfurz007

答えて

0

、私が使用して作業しました:

var vars= ['myVar1','myVar2','myVar3']; 
var ref = firebase.firestore().collection('myCol'); 
vars.forEach((v)=> { ref = ref.where(v,'==',true)}); 
ref.get().then((results) = {...}) 
関連する問題