Whenever you have events outside of angular that change angular scopes you need to use $apply
to inform angular that changes are made and to run a digest cycle.
If you were to use ng-click
instead you wouldn't run into this problem.
To resolve with current external event code:
element.bind('click', function (e) {
scope.$apply(function(){
growl.addErrorMessage('aaa');
})
});