我在Angular2中创建了一个单例类,它工作正常。我能够存储一些值并在子组件中使用它们。但问题是当我刷新浏览器时,重新创建单例类并且旧对象消失了。无论如何,即使在浏览器刷新之后,我仍可以保持这些值。如果有人能帮助我,那将是一个救生员。提前致谢。
注意:我不想使用 localstorage 或 sessionstorage ,因为它们需要存储大量信息。
答案 0 :(得分:1)
IndexedDB听起来像是一个很好的解决方案。
检查canIuse是否支持浏览器。
您可以创建一个公开某些方法的角度服务,例如
由于IndexedDB是异步的,我建议你让这些方法返回promises以获得一个干净的API。
一旦你有这样的服务,你在浏览器上基本上有一个角度通用数据持久层,存储量很大。
LocalStorage est非常有限(在某些平台上为5MB),而indexedDB通常提供更多的存储空间。它仍然取决于用户的浏览器和操作系统。
PS:您可能想要编辑您的问题,因为您的问题更多是关于数据存储而不是关于单例模式