SO - Duplicate Service in Angular

by Jeremy Likness

HTML

<div ng-app="myApp">
    <div ng-controller="controller1">{{text}}</div>
    <div ng-controller="controller2">{{text}}</div>
</div>

JavaScript

var mod1 = angular.module("mod1", []);
mod1.service("service", function() {
    this.echo = function(msg) {
        console.log(msg);
    };
});
var mod2 = angular.module("mod2", []);
mod2.service("service", function() {
    this.say = function(msg) {
        console.log(msg);
    };
});
var client1 = angular.module("client1", ["mod1"]);
client1.controller("controller1", function($scope) {
    $scope.text = "client1";
    var service = angular.injector(["mod1"]).get("service");
    service.echo("client1");
});
var client2 = angular.module("client2", ["mod2"]); 
client2.controller("controller2", function($scope, service) {
    $scope.text = "client2";
    service.say("client2");
});
angular.module("myApp", ["client1", "client2"]);