http://stackoverflow.com/questions/21442183/is-it-an-antipattern-to-use-angulars-watch-in-a-controller
See the bottom:
$scope.$on('$destroy', $scope.$watch('scopeVariable', functionIWantToCall));