如何在脱机工作时将数据写入和更新HTML5缓存网页?

时间:2013-11-08 20:39:35

标签: javascript jquery html5 angularjs caching

在我写的应用程序中,用户通过在线表单捕获有关某人的信息。当他们完成表格后,他们会保存工作,在会话中多次重复此过程。当他们点击“保存并结束会话”时,会返回他们刚刚保存的几个人员实例的列表,所有数据都会保存到服务器中。

我希望在离线应用中复制此功能。使用HTML5我理解如何缓存页面,以及如何使用原始Javascript(或者Angular.js缓存)将JSON表单数据存储在localStorage中。

但是否可以在离线时动态更新缓存数据的缓存网页?例如,如何将缓存的表单数据写入列表页面的缓存副本,在刚脱机会话期间使用刚刚生成的数据更新该页面?

我找不到这个答案。所有建议都非常感谢!

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您希望在离线时动态更新html视图。 如果您使用的是Angular,这很简单。

您只需要缓存JS控制器,而不仅仅是html文件(在cache.manifest中设置)。该页面将具有与在线应用程序相同的功能。

如果您想在离线时将存储的离线数据发送回服务器,您可以编写一个简单的代码:

  1. 将参数保存在localStorage中,这将标记在运行在线/离线应用程序时是否保存了数据(您可以通过向应用程序的现有部分发送AJAX请求来识别onine / offline,该部分不可离线使用(所以不能缓存一个))
  2. 当应用程序以在线模式运行时,它将收集离线存储的所有数据并将其发送到服务器