AngularJS Example
HTML
<div ng-app="app">
<div ng-controller="ParentCtrl">
<div ng-click="click()">
click me
</div>
<div class="myDirective">
</div>
</div>
</div>
JavaScript
angular.module('app', [])
.directive("myDirective", function($timeout){
return {
restrict: 'C',
scope: {
},
link: function(scope){
scope.$on("clicked", function(){
console.log('destroy');
$timeout(function(){
scope.$destroy();
});
});
}
}
});
function ParentCtrl($scope, $rootScope){
$scope.click= function(){
$rootScope.$broadcast("clicked");
};
}