我想将一个对象从一个页面传输到另一个页面。这是一个搜索结果页面,当点击它导致所需页面的结果时。所以我需要传输具有所需结果数据的对象。
我尝试使用服务和工厂,但每当我加载下一页时数据都会重置
此外,我还需要存储其他页面的客户端详细信息,所以我认为会话是更好的选择
答案 0 :(得分:3)
没有服务器干预是不可能的。如果要在客户端本身共享数据,则需要使用本地或会话存储,它将信息存储为键值对。
在本地存储中设置项目
window.localStorage.setItem("key", "value");
从本地存储中获取项目
window.localStorage.getItem("key"); // returns "value"
本地存储一直持续到浏览器/您手动清理它。另一方面,只要选项卡/窗口关闭,会话存储就会被清除。
答案 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'));