Я пытаюсь делать запросы в angular 6 с firebase firestore, у меня есть этот код, я уже загрузил пакет «npm firebase @angularfire», но не работает:
import { Component } from '@angular/core';
import { AngularFirestore, AngularFirestoreCollection } from
'@angular/fire/firestore';
import {Lesson} from './models/lesson.model'
import { Observable} from 'rxjs';
import {BehaviorSubject} from 'rxjs/BehaviorSubject';
import {switchMap} from 'rxjs/operators';
import * as moment from 'moment';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
lessonRef:AngularFirestoreCollection<Lesson>;
lesson$: Observable<Lesson[]>;
endDate$: BehaviorSubject<Date>;
constructor(afs:AngularFirestore){
this.endDate$ = new BehaviorSubject(new Date('2017-12-24'));
this.lesson$= this.endDate$.pipe(
switchMap(date=>
afs.collection<Lesson>('Lesson', ref =>
ref.where('endDate', "= = ", date))
.valueChanges(),
),
);
}





Вы нигде не определяете ref. Как говорит Документация AngularFire:
Queries are created by building on the
firebase.firestore.CollectionReference.
Вам нужно будет определить CollectionReference, как показано в Документация Firestore:
let ref = firebase.firestore().collection("Lessons");
Затем вы можете определить коллекцию AngularFire2 с запросом поверх этого с кодом, который у вас уже есть.
но где я должен это напечатать?
Перед тем, как вы впервые используете ref, например, на отдельной строке прямо перед `this.lesson $ = this.endDate $ .pipe (`
Что не работает с кодом, которым вы поделились?