Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Firestore和Angular从数组中查询对象_Angular_Typescript_Firebase_Google Cloud Firestore - Fatal编程技术网

如何使用Firestore和Angular从数组中查询对象

如何使用Firestore和Angular从数组中查询对象,angular,typescript,firebase,google-cloud-firestore,Angular,Typescript,Firebase,Google Cloud Firestore,我正试图从Firestore中查询一个对象,即uid,以便将以下对象作为值返回 我已经尝试创建一个函数来获取对象“香蕉” getFruit(fruitUid: string, basketUid: string): Promise<any> { const basketRef = this.afs.doc(`basket/${basketUid}`).ref; return this.afs.firestore.runTransaction((ts) => {

我正试图从Firestore中查询一个对象,即
uid
,以便将以下对象作为值返回

我已经尝试创建一个函数来获取对象“香蕉”

getFruit(fruitUid: string, basketUid: string): Promise<any> {
    const basketRef = this.afs.doc(`basket/${basketUid}`).ref;

    return this.afs.firestore.runTransaction((ts) => {
      return ts.get(basketUid).then((sfDoc) => {
        return sfDoc.data().fruits
        .filter(fruit => fruit.uid === fruitUid);
      });
    });
  }

有没有办法通过指定
uid
来获取特定对象,这样我就可以从数组
fruits
返回特定的
fruits

对于单个文档检索,您不需要事务:

getFruit(fruitUid: string, basketUid: string): Promise<any> {
    const basketRef = this.afs.doc(`basket/${basketUid}`);

    return basketRef.get().then((sfDoc) => {
      return sfDoc.data().fruits
      .filter(fruit => fruit.uid === fruitUid);
    });
}
getFruit(fruitUid:string,basketUid:string):承诺{
const basketRef=this.afs.doc(`basket/${basketUid}`);
return basketRef.get().then((sfDoc)=>{
返回sfDoc.data()
.filter(fruit=>fruit.uid===fruitUid);
});
}
getFruit(fruitUid: string, basketUid: string): Promise<any> {
    const basketRef = this.afs.doc(`basket/${basketUid}`);

    return basketRef.get().then((sfDoc) => {
      return sfDoc.data().fruits
      .filter(fruit => fruit.uid === fruitUid);
    });
}