假设我有一个名为的工厂MyFactory
,并将其注入到多个控制器中。如何访问工厂内的控制器范围?
我目前想到的唯一方法如下:
app.factory('MyFactory', function() {
return function($scope) {
myPublicFunc: function() {
$scope.$on('$destroy', function() { ... });
}
}
});
app.controller('MyController1', ['$scope', MyFactory', function($scope, Myfactory) {
var factory = new MyFactory($scope);
factory.myPublicFunc();
});
但是有没有其他方法可以让我直接返回{ }
而不是function($scope) { }
inMyFactory
并直接使用工厂 ( MyFactory.myPublicFunc
) 而不必使用new
关键字创建一个新实例并仍然访问每个控制器的 $scope?