您的位置:首页 > Web前端 > AngularJS

angularjs 依赖注入的写法问题

2016-09-09 10:51 393 查看
首先格式化一下你的代码:

显示注入,代码过长,不容易阅读,代码压缩不出错
app.controller('PhoneListCtrl', ['$scope', '$http', function($scope, $http){
//do something
}]);


隐示注入,书写简单,但是在js进行压缩时候会出错,因为变量名变短,而依赖注入是基于其服务的名称的
app.controller('PhoneListCtrl', function($scope, $http){
//do something
});


大家推荐$inject的方式
app.controller('PhoneListCtrl', PhoneListCtrl);

PhoneListCtrl.$inject = ['$scope', '$http'];

function PhoneListCtrl($scope, $http){

}


另外多说一句,无论你采用那一种,在代码压缩时,其实是不用担心的,因为有插件会帮我们进行依赖注入,无论你使用的是gulp还是grunt,会有一个插件 ng-annotate 帮助你进行依赖注入的添加。

举个例子

app.controller('PhoneListCtrl', PhoneListCtrl);

/* @ngInject */
function PhoneListCtrl($scope, $http){

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: