uncaught object error: can't inject ngAnimate

2019-06-23 13:44发布

I can't instantiate my app when I try to inject 'ngAnimate' like so:

var app = angular.module('musicsa', [
  'ngCookies',
  'ngResource',
  'ngSanitize',
  'ui.router',
  'firebase',
  'ngAnimate'
]) 

I get an error Uncaught object from angular.js line 78

I installed ngAnimate using bower. Here's my bower.json:

{
  "name": "ang-changeorg",
  "version": "0.0.0",
  "dependencies": {
    "angular": "1.2.6",
    "json3": "~3.2.6",
    "es5-shim": "~2.1.0",
    "jquery": "~1.10.2",
    "bootstrap": "~3.0.3",
    "angular-resource": "1.2.6",
    "angular-cookies": "1.2.6",
    "angular-sanitize": "1.2.6",
    "firebase": "~1.0.11",
    "angularfire": "~0.7.1",
    "spin.js": "~2.0.0",
    "angular-ui-router": "~0.2.10",
    "angular-animate": "~1.2.16"
  },
  "devDependencies": {
    "angular-mocks": "1.2.6",
    "angular-scenario": "1.2.6"
  },
  "resolutions": {
    "angular": "1.2.6"
  }
}

And I include all the scripts in my index.html:

<script src="bower_components/jquery/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.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/firebase/firebase.js"></script>
<script src="bower_components/firebase-simple-login/firebase-simple-login.js"></script>
<script src="bower_components/angularfire/angularfire.js"></script>
<script src="bower_components/spin.js/spin.js"></script>
<script src="bower_components/angular-ui-router/release/angular-ui-router.js"></script>
<script src="bower_components/angular-animate/angular-animate.js"></script>

If I remove 'ngAnimate' from my module declaration everything works. Why can't I use ngAnimate?

2条回答
做个烂人
2楼-- · 2019-06-23 14:23

I ran into a similar situation.

If you are using karma you need to manually enter the path to angular-animate under vendor_files.js in your build.config.js (grunt task) that solves the loading dependency.

After adding I got another error which was solved by declaring it last in vendor_files.js

查看更多
贪生不怕死
3楼-- · 2019-06-23 14:28

Ran into the same problem. You have to match the version of angular to angular animate.

change:

"angular-animate": "1.2.6"

查看更多
登录 后发表回答