Angular 2数据持久性

zzl*_*lee 5 ionic2 angular

我们的开发团队开始转向Angular2/Ionic2框架,一个小细节让我们感到困惑 - 这是实现数据持久性的最佳方式?我已经在Ang2数据持久性设计中找到了一个差不多两年的Google Doc,但是,它似乎根本没有实现.我需要的最重要的功能是:

  1. 在客户端和服务器端绑定数据,因此每个更改都会自动提交
  2. 应用程序脱机时使用的本地数据集
  3. 缓存离线工作,在重新连接时立即将其与后端同步

(简而言之,就是Swarm.js的功能)我搜索了博客,stackoverflow,但到目前为止还没有答案 - 据我所知,我甚至无法使用广泛接受的外部解决方案,如PouchDB来解决这个问题并且不断在localStorage中使用手动缓存进行http get/post调用将不会对我们正在处理的项目执行此操作.你怎么看?有没有办法实现这个目标?

nla*_*son 4

PouchDB 开发人员在这里。原则上,您可以将任何客户端数据库与 Angular 一起使用。就我个人而言,我编写了一些直接使用 PouchDB 的 Angular 应用程序(从来没有见过需要angular-pouchdbTBH)。这是一个开源示例: https: //github.com/pouchdb/npm-browser

不过,PouchDB 针对与 CouchDB 同步进行了优化。如果你只是想要一个简单的键值存储 API 来替换 LocalStorage,我推荐LocalForage。它是基于承诺的,因此您可以将其包装并$q.when()在 Angular 服务中使用它,并且它应该感觉非常适合 Angular。