Angular не определен в angular-animate

Я создаю угловое приложение, у меня есть пара модулей со службами и контроллерами, и все они работают правильно. Я только что добавил angular-animate в свой список скриптов, которые загружаются из файла cshtml перед моим app.js (слегка отредактировано):

<script type="text/javascript" src="~/lib/angularjs/angular.js" defer></script>
<script type="text/javascript" src="~/lib/angular-cookies/angular-cookies.js" defer></script>
<script type="text/javascript" src="~/lib/ui-router/angular-ui-router.js" defer></script>
<script type="text/javascript" src="~/lib/angular-animate/angular-animate.js"></script>

Когда работает angular-animate, я получаю сообщение об ошибке «noop не может быть найден в undefined», см. верхнюю часть angular-animate:

(function(window, angular, undefined) {'use strict';

var noop        = angular.noop;
var extend      = angular.extend;
var jqLite      = angular.element;
var forEach     = angular.forEach;

Кажется, что переданный «угловой» имеет значение null. Но angular-cookies имеет идентичный заголовок вверху, и передается ненулевой angular. Все файлы действительны, и я запускаю версии, которые соответствуют моей версии angular.


person ChrisFletcher    schedule 15.10.2015    source источник
comment
Вы по-прежнему получаете сообщение об ошибке, если помещаете angular-animate перед ui-router? Или перед угловым печеньем?   -  person JoseM    schedule 15.10.2015
comment
Вы передаете angular, когда вызываете свою функцию-оболочку?   -  person spongessuck    schedule 15.10.2015
comment
это причина атрибута «отложить» - он вам нужен? Затем добавьте его и в анимацию. Но обычно вам это не нужно в angular.   -  person Petr Averyanov    schedule 15.10.2015
comment
Я думаю, ты прав, @petr, возможно, это из-за тега defer в других скриптах. Напишите это как ответ, и я подтвержу это утром   -  person ChrisFletcher    schedule 15.10.2015


Ответы (1)


Как указал Прит в комментарии, проблема заключалась в том, что у других тегов сценария была отсрочка, а у нового — нет. Это привело к тому, что angular-animate запустился до того, как angular загрузился.

person ChrisFletcher    schedule 19.10.2015