Improve this Doc

Error: $injector:nomod
Module Unavailable

Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

Description

This error occurs when you declare a dependency on a module that isn't defined anywhere or hasn't been loaded in the current browser context.

When you receive this error, check that the name of the module in question is correct and that the file in which this module is defined has been loaded (either via <script> tag, loader like require.js, or testing harness like karma).

A less common reason for this error is trying to "re-open" a module that has not yet been defined.

To define a new module, call angular.module with a name and an array of dependent modules, like so:

// When defining a module with no module dependencies,
// the array of dependencies should be defined and empty.
var myApp = angular.module('myApp', []);

To retrieve a reference to the same module for further configuration, call angular.module without the array argument.

var myApp = angular.module('myApp');

Calling angular.module without the array of dependencies when the module has not yet been defined causes this error to be thrown. To fix it, define your module with a name and an empty array, as in the first example above.