在angular2中的单例类

时间:2015-09-23 15:59:50

标签: angular

我在Angular2中创建了一个单例类,它工作正常。我能够存储一些值并在子组件中使用它们。但问题是当我刷新浏览器时,重新创建单例类并且旧对象消失了。无论如何,即使在浏览器刷新之后,我仍可以保持这些值。如果有人能帮助我,那将是一个救生员。提前致谢。

注意:我不想使用 localstorage sessionstorage ,因为它们需要存储大量信息。

1 个答案:

答案 0 :(得分:1)

IndexedDB听起来像是一个很好的解决方案。

检查canIuse是否支持浏览器。

您可以创建一个公开某些方法的角度服务,例如

  • writeData(密钥,数据)
  • READDATA(数据)
  • deleteData(键)

由于IndexedDB是异步的,我建议你让这些方法返回promises以获得一个干净的API。

一旦你有这样的服务,你在浏览器上基本上有一个角度通用数据持久层,存储量很大。

LocalStorage est非常有限(在某些平台上为5MB),而indexedDB通常提供更多的存储空间。它仍然取决于用户的浏览器和操作系统。

PS:您可能想要编辑您的问题,因为您的问题更多是关于数据存储而不是关于单例模式