需要建议 - 带有IndexedDB的Angular 4

问题描述 投票:0回答:1

需要建议!使用带有Angular 4的IndexedDB为混合移动应用程序开发具有脱机存储的应用程序。虽然我已经实现了CRUD操作,甚至还集成了我的REST API。我陷入了进一步的困境。现在,这是我的问题陈述。 1)我有来自我的ReST服务的2000条记录,我将它存储在我的应用程序的IndexedDb(浏览器)中。我将从本地数据库(索引)显示和编辑我的页面上的记录,并在本地数据库本身编辑后保存,即我的所有事务都使用本地索引Db完成。如何管理本地数据库与应用程序命中的主数据库之间的记录同步? 2)如果更新了2000条记录中的任何一条,我是否需要将整个主DB同步到本地DB?或者我怎么知道哪些特定记录更新了?好的,拥有一面旗帜可以解决问题一段时间。但是,有双向同步。 a)索引数据库中的已编辑记录将同步到主数据库(我无法将整个索引数据库同步到主数据库,我只能有标记并且只将已编辑的记录同步到主数据库)。 b)主数据库也可能更新(2000条记录中的任何一条或同时添加了更多记录)我需要将主数据库与本地的索引数据库同步。

我怎样才能做到这一点? - 我需要知道同步的方法,甚至更新特定的标记记录。甚至记录中的任何字段都会更新 - 如何调整标记?

除了开发代码之外,我只需要知道这种方法。提前致谢!

database-design architecture logic backend indexeddb
1个回答
0
投票

除了开发代码之外,我只需要知道这种方法。提前致谢!

您可以使用的方法取决于您拥有的技术选择。例如,您可以使用可以在浏览器中运行的主/主设置构建的数据库,例如Pouch DB。 PouchDB是为这种情况而构建的。

另一种方法是使用不变性模式,在这种情况下,您不要编辑任何只插入版本的记录。通过不变性,您可以将数据上传到服务器并根据您的策略从服务器下载数据,即当客户端在线等时,您只需要使用最新的数据集。

您还可以使用git方法,您可以在其中进行更改集,冲突和合并。

或者可以使用websockets进行同步。

© www.soinside.com 2019 - 2024. All rights reserved.