gpt4 book ai didi

javascript - 如何获取 AngularFire 2 中的键值?

转载 作者:行者123 更新时间:2023-11-29 10:06:45 25 4
gpt4 key购买 nike

我在使用 Angular 2 中的 AngularFire 获取唯一键的值时遇到问题。

这是我的结构:

enter image description here

如您所见,报告中包含唯一的键和值。我可以使用 *ngFor 轻松获取这些值,但我想要的是获取唯一键的值。这是我的代码:

import { AngularFire, FirebaseListObservable} from 'angularfire2';

export class MapsComponent implements OnInit {
item: FirebaseListObservable<any[]>;
constructor(private af: AngularFire) {
this.item = af.database.list('/reports/-Ka2fkQJ3krtBztMtiRD')
}
ngOnInit() {
}
}

html:

<md-card>
<md-card-title>Report</md-card-title>
<md-card-content>
{{item.plateNumber}}
</md-card-content>
</md-card>

如您所见,我想获取键 -Ka2fkQJ3krtBztMtiRD 中的值,所以我所做的是 af.database.list('/reports/-Ka2fkQJ3krtBztMtiRD')。我什么也没得到,甚至没有错误。

我是不是漏掉了什么?任何帮助将不胜感激。

最佳答案

如果你想要一个引用单个对象的可观察对象,而不是一个列表,你应该使用 FirebaseObjectObservable :

import { AngularFire, FirebaseObjectObservable } from 'angularfire2';
...
export class MapsComponent implements OnInit {
item: FirebaseObjectObservable<any>;
constructor(private af: AngularFire) {
this.item = af.database.object('/reports/-Ka2fkQJ3krtBztMtiRD');
}
ngOnInit() {
}
}

你的模板应该是这样的:

<md-card>
<md-card-title>Report</md-card-title>
<md-card-content>
{{(item | async)?.plateNumber}}
</md-card-content>
</md-card>

如果您担心有很多 item | async 表达式遍及您的模板,您可以利用 ngIf's support for local variables :

<md-card *ngIf="item | async; let i">
<md-card-title>Report</md-card-title>
<md-card-content>
{{i.plateNumber}}
</md-card-content>
</md-card>

关于javascript - 如何获取 AngularFire 2 中的键值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41865092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com