2015-10-15 82 views
1

我得到這個錯誤:

Uncaught Error: [$injector:modulerr] 

但我不記得我做錯了什麼,所以我怎麼能找到是什麼原因導致這個錯誤?

JS

angular.module('app', ['ngMaterial', 'angular-loading-bar', 'ngAnimate']) 
.config(function($mdIconProvider) { 
    $mdIconProvider 
     .defaultFontSet('fontawesome') 
     .iconSet("call", '/images/icons/sets/communication-icons.svg', 24) 
     .iconSet("social", '/images/icons/sets/social-icons.svg', 24); 
}) 
.controller('AppCtrl', function ($scope, $timeout, $mdSidenav, $mdUtil, $log) { 
    $scope.toggleLeft = buildToggler('left'); 
    $scope.toggleRight = buildToggler('right'); 
    /** 
    * Build handler to open/close a SideNav; when animation finishes 
    * report completion in console 
    **/ 
    function buildToggler(navID) { 
     var debounceFn = $mdUtil.debounce(function(){ 
      $mdSidenav(navID) 
       .toggle() 
       .then(function() { 
        $log.debug("toggle " + navID + " is done"); 
       }); 
     },200); 
     return debounceFn; 
    } 
    $scope.closeLeft = function() { 
     $mdSidenav('left').close() 
     .then(function() { 
      $log.debug("close LEFT is done"); 
     }); 
    }; 
    $scope.closeRight = function() { 
     $mdSidenav('right').close() 
     .then(function() { 
      $log.debug("close RIGHT is done"); 
     }); 
    }; 

    var originatorEv; 
    this.openMenu = function($mdOpenMenu, ev) { 
     originatorEv = ev; 
     $mdOpenMenu(ev); 
    }; 
}); 


function DialogController($scope, $mdDialog) { 
    $scope.hide = function() { 
     $mdDialog.hide(); 
    }; 
    $scope.cancel = function() { 
      $mdDialog.cancel(); 
    }; 
    $scope.answer = function(answer) { 
     $mdDialog.hide(answer); 
    }; 
} 

PS。如果這是導致錯誤的原因,我不會在我的應用中使用ngRoute

+2

,如果你能使用非精縮的角度 - 你可以在HTML中獲得更多可讀的錯誤信息 – Grundy

+0

您是否包括了所有必需的js文件?確保沒有錯過的js文件包含... –

+0

你是否縮小了你的代碼?或按原樣使用它? – Grundy

回答

3

您應該使用Angular的非微軟版本來獲得更好的錯誤處理。

而且我總是建議採用嚴格的依賴注入,像這樣:

.config(['$mdIconProvider', function($mdIconProvider) { 
.... 
]); 
+0

methinks,如果用戶縮小了他的代碼,你會發現解決方案:-) – Grundy

+0

對不起,你的意思是? 我的意思是因爲在錯誤消息中提到了angular.min.js,他應該在開發環境中爲angular.js取消註冊。 –

+0

@MoBinni非常感謝你!我會嘗試使用Angular的非微軟版本。 –

相關問題