离子本地存储与使用服务

时间:2015-03-04 03:38:00

标签: angularjs ionic-framework ionic angular-local-storage

我发现自己将我的api调用中的所有数据都放在设备本地存储中,我不确定是否将内容存储在本地存储中并将其置于服务中是否重要。我应该何时使用设备中的本地存储与使用Angularjs服务?

3 个答案:

答案 0 :(得分:7)

你有点混淆概念。 当谈到angularjs服务时,只要页面没有刷新,它们就会保留数据,只要您刷新页面或关闭浏览器选项卡,数据就会消失。

将Angularjs服务视为您声明的变量,这些变量的范围限定为浏览器选项卡的生命周期。因此,您可以使用它来存储一些临时标志和值,这些标志和值不应转发到下一个会话。

然而, 当涉及到localStorage时,请将其视为数据库类型的东西。无论您存储在localStorage中,都会保存在浏览器中,并且可以在多个标签和应用会话中使用[直到和除非用户清除浏览器数据]

由于您使用的是Ionic和Cordova,因此您必须使用localStorage来保存用户名和密码等内容,以便用户在下次打开您的应用时使用它们。请注意,关闭应用程序相当于关闭浏览器选项卡。

然而,如果您每次用户访问您的应用时都有一些不断刷新的数据,您可以使用服务来存储它们,以便在应用关闭后立即将其删除。


隐喻,localStorage - >辅助,非易失性存储,angularjs服务 - >主要的易变存储。

答案 1 :(得分:0)

存储在本地存储中的数据是持久的。因此,如果您重新加载Web应用程序,本地存储中的数据将一直存在。本地存储通常限制为5MB。见this

服务在内存构造中。因此,如果您将任何内容投入使用,它将在浏览器的内存中,并在刷新浏览器时丢失。

所以这取决于你需要什么。

答案 2 :(得分:0)

您可以将此localstorage插件用于您的应用。 https://github.com/grevory/angular-local-storage