1

我的数据库结构如下:

|- services (root-collection)
|---- doc1
|-------- reviews (sub-collection 1)
|------------- subdoc1
|------------- subdoc2 ...
|-------- 查询(子集合 2)
|------------- subdoc1 。 ..

我的根集合(服务)有两个子集合。
我想得到他所有子集合的根集合。

我正在使用 react-redux-firebase 和 redux-firestore,并使用 firestoreConnect 连接到我的数据库。

我的代码是这样的:

firestoreConnect((props) => [    
    { collection: 'services', doc: props.match.params.id },
    { collection: 'services', doc: props.match.params.id, subcollections: [{ collection: 'inquiry' }]},
    { collection: 'services', doc: props.match.params.id, subcollections: [{ collection: 'reviews' }]}
  ]), 


我的预期:我将“state.firestore.ordered”中的所有数据作为数组。
但总是最后一个查询数据(= subcollections : [{ collection: 'reviews' }]) 被重写在 'ordered' 区域。结果总是在那里只有一个子集合。

所以我只想问'如何使用 firestoreConnect 获得超过 2 个子集合'?
我希望有人给我一些提示我做错了什么和误解!
非常感谢 :)

4

1 回答 1

0

像下面这样检索它。

let rootRef = db.collection('rootCollection').doc('docId');
   rootRef .getCollections().then(collections => {
   collections.forEach(collection => {
   console.log('Subcollection id:', collection.id);
  });
});
于 2019-08-22T15:06:09.793 回答