小编Kub*_*our的帖子

Angular2上的.map/.subscribe是如何工作的?

我正在尝试使用AngularFire2从Firebase填充3个变量(数组).

DB结构是这样的:

Firebase3结构

我坚持认为我应该如何解决Promise来映射以填充这些变量.即使最简单的查询也不会返回任何内容,并且console.log也不显示任何内容.

    let testConnection = this.AngularFire.database.list(DbPath)
          .map((items) => {
            console.log(items);
            return items.map(item => {
                console.log(items);
                 console.log(item);
   })})
Run Code Online (Sandbox Code Playgroud)

我试过.subscribe,但由于这保留了快照(并且没有保留它不起作用),这对我来说是不可行的:/.但它起作用并填补了它.

return this.AngularFire.database.list(DbPath, { preserveSnapshot: true })
.subscribe(
(snapshots:any) => {
    snapshots.forEach(snapshot => {
    console.log(snapshot.key);

       if (snapshot.key === 'disliked') {
       this.dataListDisliked = snapshot.val();
   }
   ...
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?非常感谢

firebase firebase-realtime-database ionic2 angularfire2 angular

5
推荐指数
1
解决办法
1万
查看次数