我对 AngularJS 很生气!我使用以下语法设计了我的模块:
angular.module('myModule.controllers').controller('someCtrl',
['$scope', '$route', 'someService', function ($scope, $route, someService) {
someService.getData.success(function(){});
}
过去一切正常......直到昨天,当我意识到我需要在我的路线中使用解析,以便我可以延迟我的视图的呈现,直到所有数据都从我的 datacontext 服务返回并且所有承诺都得到解决。
但是,这意味着我必须将上面的语法更改为:
function someCtrl($scope, $route, someService) {
}
someCtrl.resolve = {
// get data from here
}
someCtrl.$inject = ['$scope', '$route', 'someService'];
所以在我的路线定义中我可以做到:
controller: someCtrl,
resolve: someCtrl.resolve
我不喜欢上面的语法。我更喜欢我以前做的事情(缩小友好的语法)。
现在的问题是,使用新语法,如何将 someCtrl 分配给我之前定义的角度模块“myModule.controllers”?