我有一个相当简单的Angular应用程序,可以在我的开发机上正常运行,但是在部署它后却出现此错误消息(在浏览器控制台中)失败:
Uncaught Error: [$injector:unpr] http://errors.angularjs.org/undefined/$injector/unpr?p0=tProvider%20%3C-%20t%20%3C-%20%24http%20%3C-%20%24compile
除此之外,没有其他消息。页面首次加载时会发生这种情况。
我正在运行ASP.NET MVC5,Angular 1.2RC3,并通过git推送到Azure。
谷歌搜索还没有发现任何有趣的东西。
有什么建议?
编辑:
我正在使用TypeScript,并使用$inject
变量定义依赖项,例如:
export class DashboardCtrl {
public static $inject = [
'$scope',
'$location',
'dashboardStorage'
];
constructor(
private $scope: IDashboardScope,
private $location: ng.ILocationService,
private storage: IDashboardStorage) {
}
}
我认为应该(或打算)解决在最小化期间出现的可能导致此错误的局部变量重命名问题。
就是说,这显然与缩小过程有关,因为当我BundleTable.EnableOptimizations = true
在开发机上设置时,就可以复制它。
$inject
公共变量定义我的所有依赖关系,我相信这与您建议的方式相同(请参阅docs.angularjs.org/guide/di)。我将更新我的问题。