使用角度服务/工厂的安装员和吸气剂

时间:2016-11-20 06:58:07

标签: javascript angularjs

我想将大量数据从控制器A传递给控制器​​B.

所以我做了这个工厂

angular.module('MyApp')
  .factory('holdCustomCover', function($scope, img_data) {
        return {
            save: $scope.img_data = img_data;

            get: $scope.img_data;
        }
  })
我正在做对吗?所以稍后在控制器A我该怎么办?喜欢 holdCustomCover.save(myImgDataHere)

然后在控制器B中我holdCustomCover.get()我可以获得img值吗?

1 个答案:

答案 0 :(得分:2)

您无法在$scope / factory功能中注入service。服务/工厂是单件对象,负责数据共享。你应该只有那里的公共代码。

在你的代码中,你必须为getter和amp;创建一个函数。 setter,它将返回img_data,它是holdCustomer factory的私有数据。

angular.module('MyApp')
  .factory('holdCustomCover', function() {
      var img_data; //private data
        return {
            //setter
            save: function (data){
              img_data = data;
            },
            //getter
            get: function(){
              return img_data;
            }
        }
 })
相关问题