转载请写明来源地址:http://blog.csdn.net/lastsweetop/article/details/60966263
Provider简介
每个web应用都是由多个对象协作完成的,这些对象需要初始化并连接在一起为app服务。在AngularJS中,app中的大多数对象通过injector服务初始化和连接在一起。
Injector创建两种类型的对象,service对象和特别对象。
Service对象由开发者自定义api。
特别对象则遵照AngularJS框架特定的api,这些对象包括:controller, directive, filter or animation。
Injector需要知道怎么样创建这些对象,你可以通过“配方”告诉它这些,总共有五种“配方”。
最详细最全面的是Provider“配方”,其他四种(Value, Factory, Service and Constant)只是在Provider“配方”之上包装了一下而已。
“配方”
为了使injector知道怎么样创建和链接这些对象,你需要recipe的注册表。每一个recipe都有一个对象的id和怎样创建对象的说明。
一个“配方”对应angularjs的一个modu