2014-11-26 2 views
2

ngAnimate 및 ui-view를 사용할 때 오류가 발생합니다. 어떤 내비게이션 메뉴를로드하거나 클릭하십시오; angular-animate.js는 'object is not function'오류를 생성합니다. 여기ngAnimate 객체가 함수로 설정되지 않았습니다.

주요 javacsript 응용 프로그램 :

(function() { 
'use strict'; 
var app = angular.module("pie", ['ui.router', 'uiGmapgoogle-maps', 'ui.bootstrap', 'ngAnimate']); 

app.config(["$stateProvider", "$locationProvider", "$urlRouterProvider", 
function ($stateProvider, $locationProvider, $urlRouterProvider) { 

    $locationProvider.html5Mode({ enabled: true, requireBase: false }); 

    $urlRouterProvider.otherwise('/Welcome'); 
    $stateProvider 
     .state("Welcome", { 
      url: "/Welcome", 
      templateUrl: "../Scripts/Home/WelcomeView.html", 
      controller: "WelcomeController" 
     }) 
     .state("About", { 
      url: "/About", 
      templateUrl: "../Scripts/Home/AboutView.html", 
      controller: "AboutController" 
     }) 
     .state("Contact", { 
      url: "/Contact", 
      templateUrl: "../Scripts/Home/ContactView.html", 
      controller: "ContactController" 
     }) 
     .state("Login", { 
      url: "/Account/Login" 
     }) 
     .state("Register", { 
      url: "/Account/Register" 
     }) 
     .state("ForgotPassword", { 
      url: "/Account/ForgotPassword" 
     }); 
}]); 

//app.animation('.view-animation', function() { 
// return { 
//  enter: function (element, done) { 
//   element.css({ 
//    opacity: 0.5, 
//    position: "relative", 
//    top: "10px", 
//    left: "20px" 
//   }).animate({ 
//    top: 0, 
//    left: 0, 
//    opacity: 1 
//   }, 1000, done); 
//  } 
// }; 
//}); 

app.config(['$httpProvider', function ($httpProvider) { 
    //Http Intercpetor to check auth failures for xhr requests 
    $httpProvider.interceptors.push('AuthHttpResponseInterceptor'); 
}]); 

// Google map 
app.config(['uiGmapGoogleMapApiProvider', function (uiGmapGoogleMapApiProvider) { 
    uiGmapGoogleMapApiProvider.configure({ 
     // key: 'your api key', 
     v: '3.17', 
     libraries: 'weather,geometry,visualization' 
    }); 
} 
]); 

}()); 

는 놀랍게도 애니메이션이 작동하는 것 같다,하지만 오류를 해결하는 것을 선호 :

오류가 각도-anumate.js에서 생성됩니다

이것은 :

function fireDoneCallbackAsync() { 
              fireDOMCallback('close'); 
              if (doneCallback) { 
               $$asyncCallback(function() { 
                doneCallback(); 
               }); 
              } 
             } 

저는 IDE로 vs2013을 사용하고 있습니다. 모든 자바 스크립트 파일과 라이브러리가 페이지 하단에 삽입됩니다. 번들이나 정규 스크립트를 통해 주입하려고 시도했지만 차이점은 없습니다.

어떤 도움을 주시면 감사하겠습니다. 감사합니다

내가 app.animation 오류 남아 전화를 언급 경우에도 (위의 코드를 참조) 을 편집했다. 그냥 ngAnimate 오류

var app = angular.module("pie", ['ui.router', 'uiGmapgoogle-maps', 'ui.bootstrap', 'ngAnimate']); 

를 생성합니다 주입하면 인생이 원인이 될 수 있습니까?

+0

"완료"기능이 문제를 일으키는 것으로 보입니다. 예상되는 입력은 function (element, className, from, to, done)입니다. 여기서 from과 to는 필수이며, done은 from, one은 객체이어야하지만 다른 것은 그렇지 않다고 생각합니까? 참조 : https://docs.angularjs.org/api/ngAnimate/service/$animate – SoluableNonagon

답변

11

ngAnimate을 사용할 때 기억해야 할 중요한 점은 ngAnimate 버전이 사용중인 각형 버전과 동일해야한다는 것입니다.

즉, 1.3.4 각도를 사용하는 경우 v 1.3.4 각도 각형을 사용해야합니다.

라이브러리 만 포함하면 오류가 발생하므로 버전이 동기화되지 않았을 것으로 예상됩니다.

+1

감사합니다. 그거였다. Nugets에서 설치된 앵귤러 코어는 1.3.2 및 ngAnimate 1.2.27이었습니다. 나는 꽤 많은 연구를 해왔고 절대로이 요구 사항에 도달하지 못했습니다. – bouchepat

+0

아. 이 사람도 나를 잡았다. 동기화되지 않은 버전을 사용하고 있음을 알리는 경고 메시지가 있으면 좋을 것입니다. – Don

+1

@Don, 동의 함 -이 질문에 신속하게 대답 할 수 있었던 이유는 그것이 나에게 수 차례 발생했기 때문입니다! 이렇게하면 [ngHint] (https://github.com/angular/angular-hint) –

관련 문제