Javascript 如何从不同的控制器传递值
我想将值从ng click inside按钮传递到html页面(控制器)。 我有一个带有“getPersonalCtrl”控制器的页面,可以从ng单击中获取我的vaue, 并希望将此值发送到不同html页面中的控制器“viewPersonalCtrl”,但我无法获取该值 这是我的getPersonalCtrl(控制器): 这是我要将数据发送到的viewPersonalCtrl(控制器):Javascript 如何从不同的控制器传递值,javascript,html,angularjs,controller,Javascript,Html,Angularjs,Controller,我想将值从ng click inside按钮传递到html页面(控制器)。 我有一个带有“getPersonalCtrl”控制器的页面,可以从ng单击中获取我的vaue, 并希望将此值发送到不同html页面中的控制器“viewPersonalCtrl”,但我无法获取该值 这是我的getPersonalCtrl(控制器): 这是我要将数据发送到的viewPersonalCtrl(控制器): mymedical.controller('viewPersonalCtrl',['$scope','$ht
mymedical.controller('viewPersonalCtrl',['$scope','$http','$cookies','myService', function($scope,$http,$cookies,myService){
$scope.myreturnedData = myService.getInfo();
console.log($scope.myreturnedData);
}]);
mymedical.factory('myService', function(){
console.log("factory");
var infoObj = null;//the object to hold our data
return {
getInfo:function(){
console.log("getInfo");
console.log(infoObj);
return infoObj;
},
setInfo:function(value){
//console.log("setInfo");
//console.log(value);
infoObj = value;
}
}
});
我需要做什么来修复它
谢谢,你能按下面的代码试试吗
mymedical.factory('dummyFactory', [function () {
var infoObj = null;
var myServiceFactory = {
setObj: function (value) {
infoObj = value;
},
getObj: function () {
return infoObj;
}
};
return myServiceFactory;
}]);
在控制器中:
mymedical.controller('getPersonalCtrl',['$scope','$http','$cookies','myService',function($scope,$http,$cookies,myService) {
$scope.viewCurrent = function(value){
$scope.information = value;
myService.setInfo($scope.information);
///window.location="viewDetails.html";
}
}]);
dummyFactory.setObj(null);
var val2 = dummyFactory.getObj();
val2将在控制台中为空。可能重复感谢您的回答!在secound控制器中,我想获取您所说的var val2=myService.getObj()数据;在第一个设置值的控制器中,$scope.viewCurrent=function(value){$scope.information=value;myService.setObj($scope.information);}对我来说仍然不起作用,当你说var val2=myService.getObj()时,它返回null;这是否意味着您使用的是服务而不是工厂?另外,请告知您的myService.setObj($scope.information);我什么也不退。。