2014-06-06 119 views
10

我只在Chrome中得到這個錯誤文本。根本沒有任何附加信息:如何在Angular中獲得更詳細的錯誤信息?

enter image description here

是什麼意思?發生了什麼?有沒有辦法告訴Angular或Chrome顯示更詳細的錯誤信息?

這是我的app.js文件。閒來無事包括:

'use strict'; 


// Declare app level module which depends on filters, and services 

var vsApp = angular.module('vsApp', [ 
    'ngRoute', 
    'vsApp.filters', 
    'vsApp.services', 
    'vsApp.directives', 
    'vsApp.controllers' 
]); 

vsApp.config(["$routeProvider"], function($routeProvider) { 
    $routeProvider.when('/registration', {templateUrl: 'partials/reg.html', controller: 'regCtrl'}); 
    $routeProvider.when('/login', {templateUrl: 'partials/login.html', controller: 'loginCtrl'}); 
    $routeProvider.otherwise({redirectTo: '/'}); 
}); 

vsApp.controller("regCtrl", function() {}); 
vsApp.controller("loginCtrl", function() {}); 

ng-app屬性包括:

<!DOCTYPE html> 
<html ng-app="vsApp"> 

<head>標籤:

<script id="angularScript" src="/bower_components/angular/angular.js"></script> 
<script src="/bower_components/angular-route/angular-route.js"></script> 
<script src="/assets/js/app.js"></script> 

UPD:

量角器帶來了更多的信息:

Message: 
    UnknownError: unknown error: [$injector:modulerr] Failed to instantiate module vsApp due to: 
Error: [ng:areq] Argument 'fn' is not a function, got string 
http://errors.angularjs.org/1.3.0-build.2795+sha.222d473/ng/areq?p0=fn&p1=not%20a%20function%2C%20got%20string 
    at http://localhost:3000/bower_components/angular/angular.js:78:12 
    at assertArg (http://localhost:3000/bower_components/angular/angular.js:1583:11) 
    at assertArgFn (http://localhost:3000/bower_components/angular/angular.js:1593:3) 
    at annotate (http://localhost:3000/bower_components/angular/angular.js:3318:5) 
    at Object.invoke (http://localhost:3000/bower_components/angular/angular.js:3986:21) 
    at runInvokeQueue (http://localhost:3000/bower_components/angular/angular.js:3915:35) 
    at http://localhost:3000/bower_components/angular/angular.js:3924:11 
    at Array.forEach (native) 
    at forEach (http://localhost:3000/bower_components/angular/angular.js:320:11) 
    at loadModules (http://localhost:3000/bower_components/angular/angular.js:3905:5) 

回答

4

我不知道如何獲得更詳細的錯誤消息。我不認爲這是可能的。但是,你似乎有至少一個語法錯誤:

vsApp.config(["$routeProvider", function($routeProvider) { 
    /* notice the [ ] */ 
}]); 

因爲你使用依賴注入註解,就像在文檔中:https://docs.angularjs.org/guide/providers#providers_provider-recipe

myApp.config(["unicornLauncherProvider", function(unicornLauncherProvider) { 
    unicornLauncherProvider.useTinfoilShielding(true); 
}]); 

在我試圖無論如何重現您收到的錯誤消息,但我只獲取有用的錯誤消息。見http://jsfiddle.net/CE6j9/1/

Uncaught Error: [$injector:modulerr] Failed to instantiate module vsApp due to: 
Error: [ng:areq] Argument 'fn' is not a function, got string 
http://errors.angularjs.org/1.2.1/ng/areq?p0=fn&p1=not%20a%20function%2C%20got%20string 
at http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:78:12 
at assertArg (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:1346:11) 
at assertArgFn (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:1356:3) 
at annotate (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:2926:5) 
at Object.invoke (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:3587:21) 
at http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:3534:37 
at Array.forEach (native) 
at forEach (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:300:11) 
at loadModules (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:3521:5) 
at createInjector (http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.1/angular.js:3461:11) 
http://errors.angularjs.org/1.2.1/$injector/modulerr?p0=vsApp&p1=Error%3A%2…cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.2.1%2Fangular.js%3A3461%3A11) 
http://errors.angularjs.org/1.2.1/$injector/modulerr?p0=vsApp&p1=Error%3A%2…cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.2.1%2Fangular.js%3A3461%3A11)  angular.js:78 
(anonymous function) angular.js:78 
(anonymous function) angular.js:3555 
forEach angular.js:300 
loadModules angular.js:3521 
createInjector angular.js:3461 
doBootstrap angular.js:1282 
bootstrap angular.js:1297 
angularInit angular.js:1246 
(anonymous function) angular.js:20126 
trigger angular.js:2298 
(anonymous function) angular.js:2562 
forEach angular.js:300 
eventHandler 

也許你還有別的干擾? 當我點擊箭頭時,我得到了錯誤的下半部分(帶有行號S)。也許你在Chrome中有錯誤的設置?

+0

是的!它完成了這項工作。問題在於語法。 – Green

+0

是的,我也做了一個jsfiddle來嘗試重現你的錯誤信息,但我只得到一個全面的:/ –

相關問題