找到AngularJS $ injector的原因:strictdi错误消息

时间:2017-08-26 11:35:27

标签: javascript angularjs

我在一个相当复杂的应用程序中收到错误消息,但Angular没有提供文件名或行号来指示最初抛出错误的位置。我已经习惯了Angular,但是过去我能找到错误的原因,但不是这次。这是错误:

Error: [$injector:strictdi] http://errors.angularjs.org/1.6.1/$injector/strictdi?p0=function(%24compile)
    at angular.js:38
    at Function.eb.$$annotate (angular.js:4072)
    at e (angular.js:4799)
    at Object.invoke (angular.js:4834)
    at angular.js:7943
    at q (angular.js:357)
    at Object.<anonymous> (angular.js:7941)
    at Object.invoke (angular.js:4842)
    at Object.$get (angular.js:4676)
    at Object.invoke (angular.js:4842)

我们在应用程序的许多不同位置使用$ compile,包括许多第三方指令/模块。我的问题是:有没有办法找到导致此错误的代码段?我一直在我的源代码中搜索'$ compile',但这给了我很多结果,但它并没有真正帮助。

有没有办法启用更好的堆栈跟踪,包括我自己的源代码,而不仅仅是AngularJS函数?如果这不存在,我也想知道它,我将不得不找到另一种方法来解决这个问题,但我希望我不会错过这里的东西。

0 个答案:

没有答案