angularjs - How to access the $scope where the factory was injected? -


say have factory named myfactory , inject several controllers. how can access controllers scope inside factory?

the way think of on how follows:

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(); }); 

but there other way can return { } instead of function($scope) { } in myfactory , use factory directly (myfactory.mypublicfunc) instead of having create new instance new keyword and still access each controller's $scope?

if use .service instead of .factory have singleton instance in controller once inject via di

and can example

module.service('myservice', function() {     return {         mypublicfn: function() {}     } }); 

and

module.controller('myctrl', function(myservice, $scope) {     $scope.publicfn = myservice.mypublicfn; }); 

Comments

Popular posts from this blog

python - Subclassed QStyledItemDelegate ignores Stylesheet -

java - HttpClient 3.1 Connection pooling vs HttpClient 4.3.2 -

SQL: Divide the sum of values in one table with the count of rows in another -