我们的开发团队开始转向Angular2 / Ionic2框架,一个小细节让我们感到困惑 – 这是实现数据持久性的最佳方式?我已经在Ang2数据持久性设计中找到了一个差不多两年的Google Doc,但是,它似乎根本没有实现.我需要的最重要的功能是:
@H_502_8@
>在客户端和服务器端绑定数据,以便自动提交每个更改
>当应用程序脱机时使用的本地数据集
>缓存离线工作,在重新连接时立即将其与后端同步@H_502_8@
(简而言之,例如Swarm.js的功能)
我搜索了博客,stackoverflow,但到目前为止还没有答案 – 据我所知,我甚至无法使用广泛接受的外部解决方案,如PouchDB来解决这个问题,并不断使用手动缓存进行http get / post调用localStorage不会为我们正在进行的项目做这件事.你怎么看?有没有办法实现这个目标?@H_502_8@
解决方法
PouchDB dev在这里.原则上,您可以将任何客户端数据库与Angular一起使用.就个人而言,我写了几个使用直接PouchDB的Angular应用程序(从未见过需要angular-pouchdb TBH).这是一个开源示例:
https://github.com/pouchdb/npm-browser
@H_502_8@
不过,PouchDB经过优化,可与CouchDB同步.如果您只想要一个简单的键值存储API来替换LocalStorage,我建议使用LocalForage.它是基于promise的,所以你可以用$q.when()包装它并在Angular服务中使用它,它应该感觉非常原生于Angular.@H_502_8@