直接在我的网页上访问Angularfire模块时,我的应用程序正常工作。但是,我无法将对Angularfire的访问权限转移到Ionic中的服务模块中。
Firebase数据:
/Teams:
/1:
Name: Team A
City: Some Town
/2:
Name: Team B
City: Another Town
当我使用新的AngularFire2,RC5时,我对新的valueChanges()访问进行了更改,并且我的页面显示了信息。
let Location:string = '/Teams;
let DataList:Observable<any>;
return DataList = this.AfDb.list(Location).valueChanges();
然后输出:
Team A from Some Town
Team B from Another Town
尝试将数据移动到服务中的问题是,我需要更一般地处理一些数据,而不知道这是一个Team对象。我无法使用map()
函数,因为我无法映射数据。我的第一个基本尝试是将Key自动(1,2)带入Key字段,但我无法让地图工作。
let Location:string = '/Teams';
let DataList:Observable<any>;
let ReturnData:Array<Team> = new Array<Team>();
DataList = this.AfDb.list(Location).valueChanges().map(
(DataRecord) => ReturnData.push(new Team(DataRecord.$key, DataRecord.$value.Name, DataRecord.$value.City ));
return ReturnData;
我没有收到编译器错误,但没有任何内容返回到我的页面,如果我尝试输出结果,则不会返回任何内容。