未执行 AngularFire2 数据库调用
AngularFire2 DB call is not executed
我正在尝试从 Typescript 中的 Angularfire2 中过滤数据库列表以获取特定记录。
AddAppointment(date:Date){
let existingAppointment = this.af.database.list(this.appointmentDbRoute).map(values => {
let filtered = values.filter(filter => filter.Date === date);
return filtered;
})};
问题是:地图方法未执行。我可以做我想做的,它不执行,只有当我在末尾添加订阅功能时。
在所有教程中仅调用 Map 方法。
我使用的版本是angularfire2@^2.0.0-beta.2
我做错了什么?
我想你想要这样的东西
this.items = af.database.list('this.appointmentDbRoute', { preserveSnapshot: true });
this.items
.subscribe(snapshots => {
snapshots.forEach(snapshot => {
// DO SOME FILTERING HERE...
});
})
来自此处的文档:https://github.com/angular/angularfire2/blob/master/docs/3-retrieving-data-as-lists.md
您正试图在 FirebaseObservable
上调用地图,因为您的调用
this.af.database.list(this.appointmentDbRoute)
returns一个FirebaseObservable
你需要subscribe
得到结果然后执行过滤
我正在尝试从 Typescript 中的 Angularfire2 中过滤数据库列表以获取特定记录。
AddAppointment(date:Date){
let existingAppointment = this.af.database.list(this.appointmentDbRoute).map(values => {
let filtered = values.filter(filter => filter.Date === date);
return filtered;
})};
问题是:地图方法未执行。我可以做我想做的,它不执行,只有当我在末尾添加订阅功能时。 在所有教程中仅调用 Map 方法。
我使用的版本是angularfire2@^2.0.0-beta.2
我做错了什么?
我想你想要这样的东西
this.items = af.database.list('this.appointmentDbRoute', { preserveSnapshot: true });
this.items
.subscribe(snapshots => {
snapshots.forEach(snapshot => {
// DO SOME FILTERING HERE...
});
})
来自此处的文档:https://github.com/angular/angularfire2/blob/master/docs/3-retrieving-data-as-lists.md
您正试图在 FirebaseObservable
上调用地图,因为您的调用
this.af.database.list(this.appointmentDbRoute)
returns一个FirebaseObservable
你需要subscribe
得到结果然后执行过滤