Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.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 如何从不同的控制器传递值_Javascript_Html_Angularjs_Controller - Fatal编程技术网

Javascript 如何从不同的控制器传递值

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

我想将值从ng click inside按钮传递到html页面(控制器)。 我有一个带有“getPersonalCtrl”控制器的页面,可以从ng单击中获取我的vaue, 并希望将此值发送到不同html页面中的控制器“viewPersonalCtrl”,但我无法获取该值

这是我的getPersonalCtrl(控制器):

这是我要将数据发送到的viewPersonalCtrl(控制器):

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);我什么也不退。。