The
AngularJs provide services for event based communication between the controllers.
i.e.
1. $parse,
2. $on,
3. $emit and
4. $broadcast
The
$scope.$emit() will fire an event up the $scope.
The $scope.$broadcast()
will fire an event down the $scope.
//THE BROADCAST EVENT FIRING AN EVENT
DOWNWARDS
$scope.$broadcast('yourEvent', {
yourBroadcast: 'broadcast whatever you want.'
// send whatever you
want
});
//THE BROADCAST EVENT LISTEN FOR THE
EVENT IN THE RELEVANT $SCOPE
$scope.$on('yourEvent', function (e, data) {
alert(JSON.stringify(data));
});
// THE BROADCAST EVENT FIRING AN EVENT
UPWARDS
$scope.$emit('yourEvent', 'Your custom message');