Angular getOrCreateInjectable的实现原理调试

125 阅读1分钟

入口:GreetingService是我在Angular项目里定义的abstract service,没有加上@Injectable注解:


return this._r3Injector.get(token, notFoundValue, injectFlags);

this的source为AppModule,records map里已经包含了70个元素:



我实现GreetingService的具体实现类,EnglishGreetingService,已经在这70个元素map里了:

这归功于我在app module providers区域的定义:

要获取更多Jerry的原创文章,请关注公众号"汪子熙":