Wie man richtig die Abfrage eines FB-Liste in AngularFire2?

Entwickle ich eine Angular2 Anwendung mit FB als backend. Auf einer Unterseite möchte ich einige Aufgaben für eine Woche, die ist angegeben durch einen parameter der route.

Ich bin mit einem BehaviorSubject als parameter an die AngularFire2 Abfrage der folgenden Art und Weise:

export class PrepareComponent implements OnInit {

    private routeSub: any;
    weekId = '';

    private weekSubject: BehaviorSubject<any> = new BehaviorSubject('weekId');

    taskTemplates$: FirebaseListObservable<TaskTemplate[]>;

    constructor(private route: ActivatedRoute,
                private router: Router,
                private angularFire: AngularFire) {

        //this.taskTemplates$ = angularFire.database.list("/taskTemplates");

Hier ist die FB-Abfrage:

        this.taskTemplates$ = angularFire.database.list("/taskTemplates", {
            query: {
                equalTo: this.weekSubject
            }
        });
    }

    ngOnInit() {
        this.routeSub = this.route.params.map(
            (params: Params) => this.weekId = params[ 'weekid' ]
        ).subscribe(
            weekId => this.weekSubject.next(weekId)
        );
    }

    ngOnDestroy() {
        this.routeSub.unsubscribe();
    }
}

Leider die FB taskTemplates$ beobachtbar ist-nicht wieder alle Daten für den gegebenen weekId.

Bin ich davon ausgegangen, dass, sobald die weekId werden durch Abfragen der Parameter der route, die Liste würde ihn als Abfrage parameter und die Rückgabe der Daten: { weekId: actualWeekId, ...}.

BEARBEITEN Hinzugefügt, die ein Beispiel von gespeicherten Daten in Feuerstellung:

  {
   "-Kc_E0U4UOl9PPtxpzCM" : {
   "description" : "asdfasdf",
   "weekId" : "99f2"
  },
  "-Kc_E3wv3fhpUt56sM4u" : {
    "description" : "another task",
    "weekId" : "99f2"
  }
}

So, was ich will zu tun ist, um alle Datensätze für eine bestimmte weekId

  • Können Sie beispielsweise eine Darstellung Ihrer Daten in die Frage?
  • Ich fügte hinzu, Beispiel Daten zu der Frage. Danke für die Hilfe!
InformationsquelleAutor paweloque | 2017-02-10
Schreibe einen Kommentar