在具有 Angularfire2 + Firebase 的 ionic2 项目中,我正在尝试将 firebase 表中的数据转换为 .ts 文件中可用的数据。
有效:
在 .ts 中
this.list = af.database.list('/items');
在网页中
*ngFor="let item of list | async"
这给了我所有与 {{item.val}} 一起使用的对象但是,我想直接在脚本中使用这些数据而不是查看,所以我尝试通过打字稿中的订阅变量访问它。这是当前的方法,
这不起作用:
this.af.database.list('/items/', { preserveSnapshot: true } )
.subscribe(snapshots =>
{
snapshots.forEach(snapshot =>
{
if ( !someList.some(x=>x==snapshot.key) )
{
someList.push(snapshot.key);
console.log(snapshot.val());
this.af.database.object('/items/'+snapshot.key, { preserveSnapshot: true } )
.subscribe( item =>
{
console.log(item.val();
});
}
})
});
它会记录控制台中每个项目的 [对象对象]。
我不明白如何在不接触 html 的情况下访问可观察量返回的 [对象对象] 的内容,最好的情况就像 item.value 一样简单?
我找到了一些.map的例子,它为我返回TypeError:item.map不是一个函数。
如何获取这些对象的内容?
任何帮助或提示进行测试不胜感激谢谢
实际上现在使用map对我有用;它必须投射在列表而不是对象上。