我已经为Angular应用设置了Cloud Firestore。我希望商店保留我所有的引用,它们都是对象。我在Firestore上的数据库设置是:users / {userID} / citations。我能够成功添加引文,如下面的代码所示,但我希望能够访问现有的引文,以便在页面加载时将其从Firestore中提取现有的引文。
我尝试使用console.log访问用户的引用,但是调用控制台时,我只是在控制台中得到了一个复杂的对象。
user$: Observable<User>;
userId: string;
constructor(
private afAuth: AngularFireAuth,
private afs: AngularFirestore,
private router: Router
) {
this.user$ = this.afAuth.authState.pipe(
switchMap(user => {
// Logged in
if (user) {
this.userId = user.uid;
return this.afs.doc<User>(`users/${user.uid}`).valueChanges();
} else {
// Logged out
return of(null);
}
})
)
}
addCitation(citation, date, type, note) {
const userRef = this.afs.collection(`users/${this.userId}/citations`);
userRef.add({
'citation': citation,
'data': date,
'type': type,
'note': note
})
console.log(this.afs.collection(`users/${this.userId}/citations`))
}