angular源码分析3-$provide

场景实例

如上图所示,通过内部服务$provide自定义service、factory等服务。执行完config方法后,provideCache增加了provideProvider、serviceProvider、factoryProvider属性,缓存了自定义服务的信息。

代码分析

$provide是angular内部的初始化时自定义的一个服务,存储在provideCache对象中。

angular初始化时,执行createInjector方法,初始化providerCache对象及其$provide属性,即$provide服务。在依赖注入这个$provide服务时,实际上使用的是provideCache对象的这个$provide属性。

 

posted @ 2017-06-18 20:56  springmin  阅读(184)  评论(0编辑  收藏  举报