【发布时间】:2015-05-22 09:48:28
【问题描述】:
我已经阅读了很多关于 S.O. 的内容。关于离线(本地)存储和 AngularFire,我知道 AngularFire 旨在用于 Angular 模型和 DOM 的 3 路绑定使用。
具体参考How to sync offline database with Firebase when device is online?,我可以看到将本地存储引入组合并非易事。我不太了解该线程中“启动”Firebase 的概念。
但是,我确实需要能够在离线模式下启动应用程序。这是我的场景:
- 我正在构建一个访客列表应用,它可以在多个设备上同时运行,使用 Firebase 作为访客列表的后端存储。
- 如果设备签入来宾,它会传播到 FB,进而传播到其他设备。它应该在本地存储中保留最新的来宾列表副本。
- 在我居住的地方,3G 覆盖是一个大问题,因此有人可能会在连接后加载应用,关闭应用,然后移至其他位置,然后在没有信号时尝试打开应用。
- 在这种情况下,应用应使用本地存储访客列表。
- 当设备再次联机时,连接到 Firebase 并将本地存储更改上传到 Firebase。
我知道 Kato 也提到过 AngularFire 的未来版本中可能会提供离线存储功能 - 这还有可能吗?否则我的想法是这样做:
- 假设应用程序已在离线模式下启动,每次客人签入时,都会更新本地存储。还要在本地存储“所做的更改”变量中跟踪该更改。
- 当/如果设备重新联机,使用 AngularFire 将 Firebase 访客列表拉入 $scope.guestList 变量。
- 遍历本地存储中的“更改”列表,并对 $scope.guestList 变量进行更改。
感觉不是一个好方法,但我不知道还有什么其他方法。有没有办法直接将 Firebase 绑定到本地存储?
【问题讨论】:
标签: local-storage firebase angularfire