Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用AngularJS服务(控制器之间的数据共享)将数据从一个html传输到另一个html_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 使用AngularJS服务(控制器之间的数据共享)将数据从一个html传输到另一个html

Javascript 使用AngularJS服务(控制器之间的数据共享)将数据从一个html传输到另一个html,javascript,html,angularjs,Javascript,Html,Angularjs,我查了好几篇有类似问题的帖子,但都找不到解决我的问题的方法 我有一个搜索页面,它向后端发送请求,并用搜索结果填充页面(每个结果都是一个对象)。我显示每个对象的简明视图,当鼠标单击特定对象时,用户应重定向到显示该对象更详细视图的页面 在我的JS端,我有一个控制器来处理$http.post调用,并从后端检索要在第一页上显示的对象。我在第二页使用不同的控制器尝试从第一个控制器获取相关对象(通过angular的.service),但由于某些原因,我在第二页获取了一个空对象。该服务使用getter和set

我查了好几篇有类似问题的帖子,但都找不到解决我的问题的方法

我有一个搜索页面,它向后端发送请求,并用搜索结果填充页面(每个结果都是一个对象)。我显示每个对象的简明视图,当鼠标单击特定对象时,用户应重定向到显示该对象更详细视图的页面

在我的JS端,我有一个控制器来处理
$http.post
调用,并从后端检索要在第一页上显示的对象。我在第二页使用不同的控制器尝试从第一个控制器获取相关对象(通过angular的
.service
),但由于某些原因,我在第二页获取了一个空对象。该服务使用getter和setter。该服务能够通过第一个控制器将对象设置得很好,并且我能够打印它。但是,在使用第二个控制器的getter重定向到第二个页面时,由于某种原因,对象会被删除并显示为空

这是相关代码。服务:

app.service('shareService',function(){
var savedData={}
功能集(数据){
savedData=数据
console.log(savedData);
}
函数get(){
console.log(savedData);
返回savedData;
}
返回{
集:集,,
得到:得到
}

});因此,经过进一步研究,我发现了以下解决方案:


我在我的服务中使用了sessionStorage,如上面的链接所述,它解决了这个问题。

使用localStorage或sessionStorage

 var myJson ={};
 localStorage.set("your_Data",myJson);
 // to get the value from another page
 var returnJson  = localStorage.get("Your_Data");  

你能为我们提供一个以上代码的插件吗?所以我试过了,但我不确定为什么我的代码不能在plnkr上正确呈现。不过,它在我的本地环境下工作,唯一的问题是,如上所述,当重定向到新页面时。post请求工作正常,我得到了请求的对象,我能够重定向到另一个页面,并在其中显示一些内容(显然,我试图从上一个页面检索的内容除外)。我相信我已经附上了处理这项具体任务的所有相关代码行。