AngularFire2-.valueChanges()不返回我的数据
我是AngularFire+Firebase的新手,我正在尝试从angularfire2 github上完成教程 当我执行此代码时:AngularFire2-.valueChanges()不返回我的数据,angular,ionic-framework,angularfire,Angular,Ionic Framework,Angularfire,我是AngularFire+Firebase的新手,我正在尝试从angularfire2 github上完成教程 当我执行此代码时: items: Observable<any[]>; constructor(db: AngularFireDatabase) { this.items = db.list('items').valueChanges(); } 我的问题是,数据库中的数据在哪里?我已经用一些数据创建了一个数据库,但是没有从节点“items”返回任何内容 提前
items: Observable<any[]>;
constructor(db: AngularFireDatabase) {
this.items = db.list('items').valueChanges();
}
我的问题是,数据库中的数据在哪里?我已经用一些数据创建了一个数据库,但是没有从节点“items”返回任何内容
提前谢谢
我的firebase结构:
{
"items": {
"1": {
"code": "C001",
"name": "client test"
},
"2": {
"code": "C002",
"name": "client test 2"
}
}
}
编辑:
我的进口:
组成部分:
import { AngularFireDatabase, AngularFireList } from 'angularfire2/database';
import { Observable } from 'rxjs';
NGD模块:
AngularFireModule.initializeApp({
// data from firebase
}),
AngularFireDatabaseModule
我正在使用Firebase实时数据库
断然的 这是rxjs版本的一个问题。我更新到6.2.0版本,代码正常:)尝试快照更改() 这是什么收藏的当前状态。以DocumentChangeAction[]的同步数组形式返回可观察的数据
首先,您不需要在构造函数内部查询。让构造函数保持简单,并使用生命周期挂钩或您自己的方法 正如我所看到的,
项
是一个可观察的。但你没有订阅。您需要订阅项目
,或者可以在模板中使用async
管道。随着时间的推移,数据将被解析
在你们班:
this.db.collection("items")
.valueChanges()
.subscribe(res => {})
或在模板中:
<some-component *ngFor="let item of items | async"></some-component>
我尝试了这两个选项,但仍然有问题。使用集合时,我得到了这样一个结果:“属性‘collection’在类型‘AngularFireDatabase’上不存在。”使用模板时,我得到了以下运行时错误:对象(…)不是函数:(@AlexSantos-请分享您的导入-包括ngModule和此组件。除此之外,我想知道您使用的是Firebase实时数据库还是Firebase Cloud Firestore?因为对于实时数据库,您应该导入AngularFireDatabase
,对于Cloud Firestore,您应该导入AngularFirestore
。
this.db.collection("items")
.valueChanges()
.subscribe(res => {})
<some-component *ngFor="let item of items | async"></some-component>