【发布时间】:2015-01-19 07:31:20
【问题描述】:
我想出了一个简单的应用程序。它提出了一些用户必须回答的问题,并将存储这些问题的答案以供本地使用。因为没有理由让数据在线,所以我会使用本地存储,所以应用程序也可以离线工作。我相信我应该为此使用 HTML5 本地存储。
显而易见的方法是使用我在 Javascript 中设置的数据集,并将其存储为序列化副本。但是由于我要存储的数据结构与 HTML (DOM) 的结构完全一致,我想知道使用 HTML5 数据属性将数据存储在 HTML (DOM) 中是否有意义。这样我就节省了一些 Javascript 代码来设置和同步代码中的并行数据结构。
我的问题:有没有一种优雅的方式来保持 HTML 的当前状态,包括它的数据属性,以便当应用程序关闭并重新启动时,可以恢复数据属性的先前状态?我应该以某种方式序列化 DOM 并存储它吗?那么反序列化和恢复呢?或者这整个概念是不好的做法?
问候, 维克
附言。 Web Components(cf. Polymer)可以在这个方向上提供一些东西吗?在我看来,我正在寻找的是真正的语义 HTML,而不是?
【问题讨论】:
-
将 JSON 存储在本地存储中,然后将其加载到具有“渲染”方法的对象中,该方法可以将正确的内容放在正确的位置。如果你做得很好,输入的 id 可以匹配 JSON 中的键,这会很容易。然后,您可以使用 object.observe 确保它始终是最新的。
标签: javascript html local-storage polymer