离子框架同步数据并脱机工作

时间:2015-02-19 15:33:36

标签: android angularjs couchdb ionic-framework pouchdb

我正在使用离子框架开发一个应用程序,它将从使用laravel构建的API中获取一些数据,将其保存在数据库中,这样当用户离线时他可以继续使用该应用程序,我做了一点在互联网上研究并找到了一个名为pouchDB的插件,它是否适用于我需要的产品?最好的方法是什么?

2 个答案:

答案 0 :(得分:11)

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

逻辑是这样的:

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

    这样,如果您的请求成功(设备具有互联网且API正常运行),则会存储数据。否则,请求失败(没有互联网或其他原因),使用存储的数据。

    这里可以看到一个例子:

    https://blog.nraboy.com/2014/06/saving-data-with-ionicframework/

    但是,正如之前的回答中提到的,如果您有CouchDB数据库设置,PouchDB是一个很好的选择。以下是一些用于同步解决方案的Ionic教程:

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

    此致

答案 1 :(得分:4)

PouchDb确保为您的应用提供数据同步的良好解决方案。 但根据您的需要,您可以选择几种提供本机数据同步和离线功能的PaaS(以及oAuth2身份验证和推送通知等许多其他功能)。

我曾与一些人建议:

  1. Parse
  2. Firebase
  3. Microsoft Azure mobile services
  4. 所有这些平台都为客户提供了适用于所有原生移动环境和JavaScript的工作。