2016-03-08 123 views
5

我们的开发团队开始转向Angular2/Ionic2框架,一个小细节让我们感到困惑 - 这是实现数据持久性的最佳方式?我已经找到了一份关于Ang2数据持久性设计的几乎两年前的Google Doc,但是,它似乎并没有完全实现。我需要的最重要的功能是:Angular 2数据持久性

  1. 结合在客户端和服务器端数据,所以每一次变化就会自动提交
  2. 本地数据集时,该应用程序进入脱机
  3. 缓存脱机工作,工作,与后端立即重新连接

同步它(总之,Swarm.js的例如功能) 我搜索博客,计算器,但至今没有答案 - 因为据我了解,我可以”甚至使用广泛接受d外部解决方案(例如PouchDB)来解决这个问题,并且不断在localStorage中使用手动缓存进行http get/post调用将不会为我们正在进行的项目执行此操作。你怎么看?有没有办法做到这一点?

回答

4

PouchDB dev here。原则上,您可以在Angular中使用任何客户端数据库。就我个人而言,我编写了几个使用直接PouchDB的应用程序(从未见过需要angular-pouchdb TBH)。这里有一个开源的例子:https://github.com/pouchdb/npm-browser

虽然PouchDB已经优化,可以与CouchDB同步。如果你只是想要一个简单的键值存储API来取代LocalStorage,我推荐LocalForage。它基于承诺,因此您可以将其包装为$q.when()并将其用于Angular服务中,并且它应该对Angular来说非常原生。

+0

谢谢。我认为我们将用Ionic2 + PouchDB做一个更小的研究项目作为数据同步解决方案。 – zzllee

+0

就像angular 2宣传打字稿一样,离线缓存也有什么用处,在线情景时是否同步?什么角度2开发通常用于实现企业应用程序的这种情况? –