javascript - 将 Firestore 文件分配给变量,并在 HTML-Angualr 7 中显示
问题描述
我正在尝试将 firestore 中的特定字段分配给 Angular 中的变量。
具体来说,我正在尝试获取归档的“年度”,并将其显示为 HTML。
这是我尝试过的代码:
AnnualVacationRef = this.firestore.collection('vacationBalance').doc('B2TKfIoz1jrJJ954jZ9z.Annual');
在 HTML 中:
<h3>Annual Vacations: {{AnnualVacationRef.Annual}}</h3>
但是,什么都没有显示。
感谢您的帮助。
解决方案
所以你说对了一半。但是,您不要.Annual
输入文档 ID:
const document = this.firestore.collection('vacationBalance').doc('B2TKfIoz1jrJJ954jZ9z')
但是您还需要使用该.get()
方法来获取DocumentSnapshot
:
const snapshot: Obervable<firestore.DocumentSnapshot> = this.firestore.collection('vacationBalance').doc('B2TKfIoz1jrJJ954jZ9z').get()
正如您在返回类型中看到的,您将获得一个 Observable。现在您有两种选择来获取该值:subscribe
或pipe(map(...))
订阅
this.fireStore.collection('collectionname').doc(id).get().subscribe(value => {
const data = value.data();
console.log(data);
item = data;
});
管道(地图(...))
import { map } from 'rxjs/operators';
item = this.fireStore.collection('collectionname').doc(id).get().pipe(map(
(value: firestore.DocumentSnapshot) => {
return value.data();
}
));
.data
总是返回整个文档。结果应如下所示:
{“年度”:14 }
html:
<p>Annual: {{item?.Annual}}</p>
推荐阅读
- sql - Red Gate Oracle Schema 比较 v3 和 v4 不解释 UserObjectPrivileges
- c# - 如何使用 Xero API 更新联系人的批量支付帐户名称和详细信息
- c - 如何将天转换为年月周然后天
- javascript - 问题
关于角材料设计 - python - Qt3D:根据实体和相机之间的距离缩放实体大小
- pytorch - 在 PyTorch 中用张量索引多维张量
- typescript - 在 Jest 中使用 toMatchObject 和 stringMatching(regexp)
- log4j2 - log4j2 appender 与 sql server 数据库对话
- micronaut - Micronaut HelloWorld 错误:意外错误:非法名称 .$HelloControllerDefinition
- unit-testing - 开玩笑:如何正确测试包含 promise 的 void 函数?