在Angular应用程序中,持久数据应该保存在哪里

Where should persistent data be saved in an Angular app

本文关键字:数据 保存 在哪里 Angular 应用程序      更新时间:2024-03-23

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

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

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

我只是想知道将数据存储在服务中有什么区别,在服务中我会做这样的事情来访问它:

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

并继续将其存储在父/引导页面的本地JavaScript中,在那里我会做这样的操作来访问它:

$scope.userAddr1 = profileData.userAddr1; 

我知道将它存储在服务中有助于保持事物的有序性,但这被认为是最佳实践还有其他原因吗?

如果您的客户端正在使用现代浏览器,那么您可以使用Web存储(localStorage或sessionStorage)。