2014-06-06 97 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来尝试重现你的错误信息,但我只得到一个全面的:/ –

相关问题