要连接具有相同匹配字段或字段值的集合,可以使用Firestore的查询功能。以下是使用AngularFire2和Firebase Firestore进行此操作的代码示例:
首先,安装AngularFire2和Firebase依赖项:
npm install firebase @angular/fire --save
在Angular应用程序的模块文件中导入所需的AngularFire2和Firebase模块:
import { AngularFireModule } from '@angular/fire'; import { AngularFireDatabaseModule } from '@angular/fire/database'; import { AngularFirestoreModule } from '@angular/fire/firestore';
@NgModule({ imports: [ AngularFireModule.initializeApp(environment.firebaseConfig), AngularFireDatabaseModule, AngularFirestoreModule ], // ... })
在组件中导入AngularFire2和Firebase模块,并注入AngularFirestore服务:
import { AngularFirestore } from '@angular/fire/firestore';
constructor(private firestore: AngularFirestore) { }
然后,您可以使用以下代码查询具有相同匹配字段或字段值的集合:
const collectionRef = this.firestore.collection('your_collection');
const query = collectionRef.where('field', '==', 'value');
query.get().subscribe(snapshot => { snapshot.forEach(doc => { console.log(doc.id, '=>', doc.data()); }); });
在上面的代码中,'your_collection'是您要查询的集合的名称,'field'是要匹配的字段名称,'value'是要匹配的字段值。
查询将返回一个Observable,您可以使用subscribe方法来订阅并处理结果。在这个示例中,我们使用forEach循环遍历查询结果的每个文档,并使用console.log打印文档的ID和数据。
请确保在执行查询之前,您已经在Firebase控制台中正确设置了适当的规则和索引。
上一篇:AngularFire2 (@angular/fire) 如何从可调用函数中获取错误?
下一篇:Angularfire2 firestore的snapshotChanges只有在登录后重新加载应用程序后才能检索数据。