离子框架同步数据和离线工作

ionic framework sync data and work offline

我正在使用 ionic 框架开发一个应用程序,它将从使用 laravel 构建的 API 中获取一些数据,将其保存在数据库中,以便当用户离线时他可以继续使用该应用程序,我在互联网上做了一些研究,发现了一个名为 pouchDB 的插件,是否推荐它满足我的需要?最好的方法是什么?

PouchDb 无疑是一个很好的解决方案,可以为您的应用程序提供数据同步。 但是根据您需要做什么,您可以在提供本机数据同步和离线功能(以及许多其他功能,如 oAuth2 身份验证和推送通知)的几个 PaaS 之间进行选择。

我已经与一些我可以推荐的人合作过:

  1. Parse
  2. Firebase
  3. Microsoft Azure mobile services

所有这些平台都为所有原生移动环境和 javascript 提供客户端。

根据您希望缓存的数据量,您可以将其保存在本地存储中。

逻辑是这样的:

  1. 向您的 API
  2. 发出 $http 请求
  3. .success 中将响应字符串化并存储在本地存储中
  4. .error解析存储的本地存储响应
  5. .success.error
  6. 填充相同的 $scope 变量

这样,如果您的请求成功(设备有互联网并且 API 可以正常工作),数据就会被存储。否则,请求失败(无网络或其他原因),使用存储的数据。

可以在这里看到一个例子:

https://www.thepolyglotdeveloper.com/2014/06/saving-data-with-ionicframework/

但是,如之前的回答所述,如果您有 CouchDB 数据库设置,PouchDB 是一个不错的选择。以下是一些用于同步解决方案的 Ionic 教程:

https://www.thepolyglotdeveloper.com/2014/12/syncing-data-firebase-using-ionic-framework/ http://devgirl.org/2014/12/30/sync-data-using-pouchdb-in-your-ionic-framework-app/

此致,