如何在首次需要时加载数据并将其保留在其他地方使用

时间:2016-01-14 15:18:04

标签: angularjs

在我的Angular SPA中,从后端加载了一些在整个应用程序中使用的数据。当应用程序正在使用时,这些数据不会发生变化,因此为了让用户保持光滑,我只想加载一次这个数据。我可以在这里看到两种可能的解决方案:

首次初始化应用时加载数据并使用$rootScope

将其附加到angular.module.run()

需要数据的第一个控制器加载它,然后把它放在...... 某个地方 ......其他一切都可以到达它。

哪种方法是"最具角度的"这样做的方式,我将如何开始实施它?关于SO的大多数问题似乎都是关于使用控制器加载数据而不是应用程序本身启动时。我使用1.4.7与UI路由器,如果这有所作为。

1 个答案:

答案 0 :(得分:0)

您可以实现已被其他人吸收的服务,并使服务以懒惰的方式加载数据。 (这里描述的延迟加载模式:https://en.wikipedia.org/wiki/Lazy_loading