Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ionic framework同步数据并脱机工作_Android_Angularjs_Couchdb_Ionic Framework_Pouchdb - Fatal编程技术网

Android ionic framework同步数据并脱机工作

Android ionic framework同步数据并脱机工作,android,angularjs,couchdb,ionic-framework,pouchdb,Android,Angularjs,Couchdb,Ionic Framework,Pouchdb,我正在使用ionic framework开发一个应用程序,它将从使用laravel构建的API中获取一些数据,保存在数据库中,这样当用户离线时,他可以继续使用该应用程序。我在互联网上做了一些研究,发现了一个名为PockDB的插件,这是我需要的推荐插件吗?最好的方法是什么?PockDB肯定是为应用程序提供数据同步的好解决方案。 但是,根据您需要执行的操作,您可以在提供本机数据同步和脱机功能(以及许多其他功能,如oAuth2身份验证和推送通知)的几个PaA之间进行选择 我与一些人合作过,我可以建议:

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

PockDB肯定是为应用程序提供数据同步的好解决方案。 但是,根据您需要执行的操作,您可以在提供本机数据同步和脱机功能(以及许多其他功能,如oAuth2身份验证和推送通知)的几个PaA之间进行选择

我与一些人合作过,我可以建议:


  • 所有这些平台都为所有本机移动环境和javascript提供了客户端

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

    逻辑是这样的:

  • 向API发出$http请求
  • .success
    中,将响应字符串化并存储在本地存储器中
  • .error
    中,分析存储的本地存储响应
  • .success
    .error
    中填充相同的
    $scope
    变量
  • 这样,如果您的请求成功(设备具有internet且API正常工作),数据将被存储。否则,请求失败(没有internet或其他原因),请使用存储的数据

    这方面的一个例子如下:

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


    关于,

    感谢您的帮助Riccardo,有一个问题,PockDB可以从任何API同步数据,还是只能与CouchDb一起工作?因为我的API是使用laravel构建的,我对ionic非常陌生,非常感谢您的耐心Hi@Stacktwo,您的后端必须支持couchDB复制协议。这个问题与您的API或ionic无关,但与您的dbms有关(可能您使用MySQL?@Stacktwo)。我建议您定期将数据同步到couchDB实例并使用它。我使用PockDB和IBM Cloudant成功地进行了概念验证(我为IBM工作)@SHC我可以在服务器上的爱奥尼亚应用程序和mysql中使用PockDB并同步它们吗?很棒的教程!我最近自己写了一篇关于DB+离子的教程:谢谢你的夸奖!如果您有数千条记录,将数据存储在本地存储器中是否是脱机工作的一个好选择??????一个谦虚的问题,我们能在没有数据库的情况下做到这一点吗?我的意思是,使用mysql怎么样