我有以下代码,在编译时我运行了ngAnnotate和uglify
angular.bootstrap(navWrap, ['my.navbar']);
现在我知道这有点不同寻常,但是在没有缩小的时候它会起作用。但是,当我尝试缩小它时会导致提供程序未找到异常。
this is a similar question仅建议我使用ngMin(ngAnnotate)。如果我关闭损坏然后一切正常,但这似乎是一个坏主意。
如果我只是更改为标签中的ng-app,它可以正常工作。有什么想法吗?
答案 0 :(得分:1)
ng-annotate
无法检测到需要注入注释的所有部分。例如,路由中使用的resolve属性不会自动注释:
app.config(function ($routeProvider) {
$routeProvider.when('/', {
templateUrl: 'home.html',
controller: 'HomeCtrl',
resolve: {
// This needs annotations when minimized
myArgument: function(myService) {
return myService.getMyArgument();
}
}
}).otherwise({
redirectTo: '/'
});
});
所以你可以自己注释......:
resolve: {
// This needs annotations when minimized
myArgument: ['myService', function(myService) {
return myService.getMyArgument();
}]
}
...或者尝试使用" ngInject"来标记它,这应该有助于注释以找到需要注入的函数:
resolve: {
// This needs annotations when minimized
myArgument: function(myService) {
"ngInject";
return myService.getMyArgument();
}
}