53

由于缺乏关于$injector(服务)的官方文档解释,我很难理解它是如何工作的。$injector每个应用程序可以有多少个 s?我应该什么时候使用它?如何$injector工作?(等等)请给我一个真实世界的解释和一些 JavaScript 沙箱示例。

4

1 回答 1

65

每个 Angular 应用程序有一个注入器。通常你不需要直接与它交互。注入器是使依赖注入在 Angular 中工作的关键。

factory, service,等模块方法directive将这些项目注册到注入器。当您注入某些东西(例如,将服务注入控制器)时,注入器将查找并实例化该服务(如果尚未实例化——如果已实例化,它将返回已实例化的对象)。

如果由于某种原因您确实需要将服务动态注入到控制器中,请参阅https://stackoverflow.com/a/14418384/215945以获取有关如何执行此操作的示例。另请参阅https://stackoverflow.com/a/14743553/215945

于 2013-05-11T18:29:00.073 回答