Может Angularjs повторно использовать услугу в нескольких ng-приложениях

Я пытаюсь создать веб-приложение, которое будет использовать несколько angular ng-приложений, и по крайней мере два могут использовать один и тот же служебный код (им НЕ ДОЛЖНЫ обмениваться данными, но они выполняют аналогичные функции), поэтому как могу ли я избежать дублирования кода? То есть

myApp1.factories.factory( 'myservice' [ function(){
   // stuff I dont want to repeat
}])

... и на другом div на другой странице в другом месте приложения:

myApp2.factories.factory( 'myservice' [ function(){
   // stuff I dont want to repeat
}])

Есть ли способ заставить два приложения повторно использовать этот служебный код? Или считается, что лучшие практики имеют только одно ng-приложение для всего вашего html (даже если части могут быть независимыми) и просто делить вещи с помощью контроллеров?

Спасибо

Ответы

Ответ 1

angular.module('myReuseableMod', []).factory('myReusableSrvc', function() {
    // code here
});

var App1 = angular.module('myApp1', ['myReuseableMod']);
App1.controller('someCtrlr', ['$scope', 'myReusableSrvc', function($scope, myReusableSrvc) {
    // controller code
}]); // end someCtrlr

var App2 = angular.module('myApp2', ['myReuseableMod']);
App2.controller('someCtrlr', ['$scope', 'myReusableSrvc', function($scope, myReusableSrvc) {
    // controller code
}]); // end someCtrlr