angularjs 依赖注入的写法问题

来源:互联网 发布:linux 实现文件服务器 编辑:程序博客网 时间:2024/05/04 15:43

首先格式化一下你的代码:

显示注入,代码过长,不容易阅读,代码压缩不出错

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){}
0 0
原创粉丝点击