基本介绍
1、AngularJS采用模块化的方式组织代码,将一些通用逻辑封装成一个对象或函数,实现最大程度的复用,这导致了使用者和被使用者之间存在依赖关系。
2、所谓依赖注入是指在运行时自动查找依赖关系,然后将查找到依赖传递给使用者的一种机制。
3、常见的AngularJS内置服务有$http、$location、$timeout、$rootScope等
基本使用
1、推断式注入
没有明确声明依赖,AngularJS会将函数参数名称当成是依赖的名称。这种方式会带来一个问题,当代码经过压缩后函数的参数被压缩,这样便会造成依赖无法找到。
App.constructor('DemoController', [function ($scope, $http) { }]);
2、行内式注入
以数组形式明确声明依赖,数组元素都是包含依赖名称的字符串,数组最后一个元素是依赖注入的目标函数。推荐这种方式注入
App.constructor('DemoController', ['$scope', '$http', function ($scope, $http) { }]);