应该将持久数据保存在Angular应用程序中的哪个位置

时间:2015-02-23 17:27:40

标签: javascript angularjs

我正在构建一个应用程序,需要访问由引导应用程序并在该页面的javascript变量中保存为JSON对象的页面提取的数据集...我显然可以访问在应用程序内。

数据在整个应用程序中用于各种功能。此外,一些数据被更改和/或添加了新数据。

我读过的所有内容都表明,像这样的持久数据应保存在服务或工厂中,因为它们是单例,并且可以很容易地注入需要访问它的任何控制器。所以我用一些getter / setter方法编写了一个服务,允许我抓取或更改存储在其中的数据。

我只是想知道在服务中存储数据之间的区别是什么,我在这里做了类似的事情来访问它:

$scope.userAddr1 = PersistentData.get('profileData', 'userAddr1');

并继续将其存储在父/ bootstrapping页面的本机JavaScript中,我在这里执行类似的操作来访问它:

$scope.userAddr1 = profileData.userAddr1; 

我可以看到如何将它存储在服务中有助于保持组织有序,但是有没有其他原因可以解释为什么这被认为是最佳实践?

1 个答案:

答案 0 :(得分:0)

如果您的客户使用的是现代浏览器,那么您可以使用Web storage(localStorage或sessionStorage)。