我在将我的返回数据从AngularFire2移动到我的代码中的数据结构时遇到了一些问题。简单地获取对象列表的基础知识对我有用,但我正在尝试将更简单的列表处理成数组。
我在Firebase中的数据(V4.10.1,AngularFire2 V5.0.0-rc.6)位于
/teams/
ABC:Team Name A
DEF:Team Name B
我的数据在列表中为:format。我想将此返回数据处理为typescript数组teamName['ABC'] = 'Team Name A'
。
我可以使用:this.AfDb.list(Location).snapshotChanges().subscribe(console.log);
我在尝试处理数据时遇到问题:
private Data_:{};
constructor(AfDb:AngularFirebaseDatabase) {
const AfData:Observable<{}> = this.AfDb.list(Location).snapshotChanges();
AfData.subscribe(list => {
list.forEach(OneRec => {
this.Data_[OneRec.key] = OneRec.payload.val();
});
});
}
我的错误是我的Key值[OneRec.key]。
core.js:1350 ERROR TypeError: Cannot set property 'ABC' of undefined.
我尝试过使用Data_:any;也没有成功。我最近在Ionic中打开了TSLint函数,这就是我尝试输入所有变量的原因。
答案 0 :(得分:0)
您尚未初始化Data_
仅设置类型,因此未定义。
private Data_ = {};