Event Bus

http://angularjs.org/

by Bretto

HTML

<script src="http://code.angularjs.org/angular-1.0.0rc8.js"></script>
<div ng-controller="MyCtrl">
  showDialog: <br>{{showDialog}}<br>
    <button  ng-click="show()">Show</button>
</div>

    <div ng-controller="Dialog">
        showDialog: <br>{{showDialog}}<br>
        <button ng-click="hide()">Hide</button>
    </div>

JavaScript

var myApp = angular.module('myApp', []);

myApp.controller('MyCtrl', ['$scope', '$rootScope', function ($scope, $rootScope) {
    $scope.showDialog = false;
    $scope.name = 'Superhero';

    $scope.show = function() {
        $rootScope.$broadcast('dialog', {show: true});
    };
    
    $scope.$on('dialog', function(event, parameters) {
        $scope.showDialog = parameters.show;
    });
        
}]);

myApp.controller('Dialog', ['$scope', '$rootScope', function ($scope, $rootScope) {

    $scope.hide = function() {
        $rootScope.$broadcast('dialog', {show: false});
    };
    
    $scope.$on('dialog', function(event, parameters) {
        $scope.showDialog = parameters.show;
    });
}]);