You must declare the outer area that you intend to use in the cell templates using the external-scopes attribute:
<div ui-grid="gridOptions" class="grid" external-scopes="gridScope"></div>
Then in the controller you need to define this scope object:
$scope.gridScope = { editUser: function() { alert('It works!'); } }
and finally, you will get access to this external area in the template as
cellTemplate: '<div ng-click="getExternalScopes().editUser()">Edit</div>'
source share