【发布时间】:2016-05-25 15:46:30
【问题描述】:
我有一个 Web 应用程序(使用 javascript 的纯客户端实现),它从 CRM 检索数据并将其保存在 HTML 本地存储中以供离线使用。但是本地存储的存储容量很低。因此我们想到了使用indexedDB。但是应用程序是以同步方式实现的,我们同步存储和检索数据,这是必须的。该应用程序非常复杂,并且有很多服务类可以访问数据。因此,如果我们尝试以异步方式重写整个应用程序,这将是一项繁琐的任务。有没有办法同步访问 indexedDB?
我尝试了here 和here 提到的解决方案。 我尝试了第二个链接中提到的 while 循环方法。但它在单线程环境中不起作用。因此,我尝试使用网络工作者进行此操作,但没有成功。我尝试使用 ES6 生成器来同步访问数据,甚至没有运气。 我知道synchronizejs。但不幸的是我不能使用任何节点模块,因为这个应用程序是一个纯客户端应用程序。我什至不能使用stratifiedjs,因为我不能从外部javascript调用stratifiedjs函数。
有没有办法在不以异步方式重写应用程序的情况下解决这个问题?
【问题讨论】:
标签: javascript synchronization local-storage indexeddb