【问题标题】:Querying Firebase db without sync angularfire2在不同步 angularfire2 的情况下查询 Firebase db
【发布时间】:2017-07-30 12:54:08
【问题描述】:

我将 angularfire2 用于我的 ionic 应用程序,我可以使用 this.angularFireDatabase.list('/users/') 查询实时数据库。

但是我希望数据库不需要同步,即只想查询一次数据库并关闭同步连接。 我可以在 android 中做与reference.sync(false); 相同的操作。

我一直在浏览他们的文档,但在那里找不到任何东西。

根据答案的完整解决方案

getUsers(): Promise<any[]> {
return new Promise((resolve, reject) => {
  let subscription = this.afd.list('/users/', { preserveSnapshot: true }).take(1).subscribe(data => {
    let retArray: any[] = [];
    for (let i = 0; i < data.length; i++) {
      retArray.push(data[i].toJSON());
    }
    subscription.unsubscribe();
    return resolve(retArray);
  });
});

【问题讨论】:

    标签: firebase angularfire2


    【解决方案1】:

    根据this,可以使用RxJS过滤算子take

    this.af.database.object('/users/', { preserveSnapshot: true).take(1);
    

    这也会在第一个值发出后终止订阅。

    记得导入take-operator:

    import 'rxjs/add/operator/take';
    

    【讨论】:

    • 太棒了...就像一个魅力...谢谢..我会在一段时间内更新实际的服务代码。
    猜你喜欢
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 1970-01-01
    • 2019-07-08
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 2017-07-21
    相关资源
    最近更新 更多