AngularJS Error: Module ngAnimate is not available

user3116668 picture user3116668 · Jan 4, 2014 · Viewed 21.7k times · Source

I'am new to angular and running into a problem. I used the yeoman angular generator and added the ngAnimate module. When I run grunt test I get the following error:

Error: [$injector:modulerr] Failed to instantiate module portfolioApp due to:
Error: [$injector:modulerr] Failed to instantiate module ngAnimate due to:
Error: [$injector:nomod] Module 'ngAnimate' 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.

app.js

'use strict';

angular.module('portfolioApp', [
   'ngAnimate',
   'ngCookies',
   'ngResource',
   'ngSanitize',
   'ngRoute'
])

index.html

<script src="bower_components/jquery/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>

    <!-- build:js scripts/modules.js -->
    <script src="bower_components/angular-animate/angular-animate.js"></script>
    <script src="bower_components/angular-resource/angular-resource.js"></script>
    <script src="bower_components/angular-cookies/angular-cookies.js"></script>
    <script src="bower_components/angular-sanitize/angular-sanitize.js"></script>
    <script src="bower_components/angular-route/angular-route.js"></script>

bower.json

{
  "name": "portfolio",
  "version": "0.0.0",
  "dependencies": {
    "angular": "1.2.0",
    "json3": "~3.2.4",
    "es5-shim": "~2.1.0",
    "jquery": "~1.10.2",
    "greensock": "~1.11.2",
    "angular-animate": "1.2.0",
    "angular-resource": "1.2.0",
    "angular-cookies": "1.2.0",
    "angular-sanitize": "1.2.0",
    "angular-route": "1.2.0"
  },
  "devDependencies": {
    "angular-mocks": "1.2.0",
    "angular-scenario": "1.2.0"
  }
}

I think the module should be loaded and i can't figure out what i'am doing wrong. Does anyone have suggestions?

Thanks

Answer

michael picture michael · Jan 4, 2014

I suspect the reason is: If you run grunt test, the karma task will run. The configuration for karma is in the karma.conf.js file. There you must add angular-animate.js in the files array.