在AngularJS中设置会话

时间:2017-06-22 04:42:33

标签: angularjs session

我想将一个对象从一个页面传输到另一个页面。这是一个搜索结果页面,当点击它导致所需页面的结果时。所以我需要传输具有所需结果数据的对象。

我尝试使用服务和工厂,但每当我加载下一页时数据都会重置

此外,我还需要存储其他页面的客户端详细信息,所以我认为会话是更好的选择

2 个答案:

答案 0 :(得分:3)

没有服务器干预是不可能的。如果要在客户端本身共享数据,则需要使用本地或会话存储,它将信息存储为键值对。

在本地存储中设置项目

window.localStorage.setItem("key", "value");

从本地存储中获取项目

window.localStorage.getItem("key"); // returns "value"

本地存储一直持续到浏览器/您手动清理它。另一方面,只要选项卡/窗口关闭,会话存储就会被清除。

More details here

答案 1 :(得分:0)

有几种方法,其中一种是其中之一。如果要在整个应用程序中交换次要对象或变量,可以使用localStorage。

您可以在localStorage中设置对象,如下所示

localStorage.setItem('objectNameAsKey', realObjectReference);

如果需要,您还可以对JSON对象进行字符串化。

 localStorage.setItem('objectNameAsKey', JSON.stringify(realObjectReference));

无论您何时需要此对象,都可以使用密钥

获取
localStorage.getItem('objectNameAsKey'); 

当您获取stringify' d对象时,您可以执行以下操作,

JSON.parse(localStorage.getItem('objectNameAsKey'));