p
r
o
v
i
d
e
定
义
服
务
provide 定义服务
provide定义服务provider
服务本身是一个任意的对象
ng提供服务的过程涉及到它的依赖注入机制
angular是用
p
r
o
v
i
d
e
r
对
象
实
现
自
动
依
赖
注
入
机
制
,
注
入
机
制
是
通
过
调
用
一
个
p
r
o
v
i
d
e
r
的
provider对象实现自动依赖注入机制,注入机制是通过调用一个provider的
provider对象实现自动依赖注入机制,注入机制是通过调用一个provider的get()方法,把得到的对象作为参数进行相关调用
例如创建模块时:
var myApp=angular.module('myApp',[],function(){
//此函数称为模块配置,即在模块启动时自动执行,
//也可自定义服务
//$provide.provider...
//$provide.factory...
//$provide.service...
}):
p
r
o
v
i
d
e
.
p
r
o
v
i
d
e
r
∗
∗
∗
∗
provide.provider** **
provide.provider∗∗∗∗provide.factory
$provide.service
$provide.provider('name',function(){
this.$get=function(){
return value
//返回的内容只能是对象
}
}):
$provide.factory('name',function(){
return value;
//返回的内容可以是任何类型
});
$provide.service('name',function(){
return value;
//返回的内容只能是对象(数组也是对象),即不能是基本类型,只能是引用类型
});
这几个服务也有简便写法:
angular.factory('name',function(){})
angular.service('name',function(){})
创建完服务后,即可在控制器内进行相关的调用 如:
angular.module('myApp',[]).controller('myCtrl',function($scope,自定义服务1,自定义服务2......){
//函数内参数先后顺序随便排列
}):