Improve this doc View Source

Any uncaught exception in angular expressions is delegated to this service. The default implementation simply delegates to `$log.error` which logs it into the browser console.

In unit tests, if `angular-mocks.js` is loaded, this service is overridden by mock $exceptionHandler which aids in testing.

## Example:

      angular.module('exceptionOverride', []).factory('$exceptionHandler', function () {
        return function (exception, cause) {
          exception.message += ' (caused by "' + cause + '")';
          throw exception;
        };
      });

This example will override the normal action of `$exceptionHandler`, to make angular exceptions fail hard when they happen, instead of just logging to the console.

## Dependencies

- `$log`

## Usage

`$exceptionHandler(exception, [cause]);`

### Arguments

Param | Type | Details
--- | --- | ---
exception | Error | Exception associated with the error.
cause (optional) | string | optional information about the context in which the error was thrown.