当使用Angular Firestore和异步管道(async pipe)时,有时可能会遇到返回null数据的问题。这可能是由于异步管道在数据加载之前尝试访问数据时触发的。
为了解决这个问题,你可以采取以下措施:
@Component({
selector: 'app-my-component',
template: `
{{ data }}
Loading...
`,
})
export class MyComponent {
data$: Observable;
constructor(private firestore: AngularFirestore) {
this.data$ = this.firestore.doc('path/to/document').valueChanges();
}
}
@Component({
selector: 'app-my-component',
template: `
{{ data$ | async }}
`,
})
export class MyComponent {
data$: Observable;
constructor(private firestore: AngularFirestore) {
this.data$ = this.firestore.doc('path/to/document').valueChanges().pipe(
filter(data => data !== null)
);
}
}
通过以上方法,你可以解决Angular Firestore异步管道返回null数据的问题。