angularjs - 请用一个清晰​​的例子解释 AngularJS $injector

标签 angularjs

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

最佳答案

每个 Angular 应用程序有一个注入(inject)器。通常您不需要直接与其交互。注入(inject)器是在 Angular 中实现依赖注入(inject)的关键。

诸如factoryservicedirective等模块方法向注入(inject)器注册这些项。当您注入(inject)某些东西(例如,将服务注入(inject) Controller )时,注入(inject)器将查找并实例化该服务(如果它尚未实例化 - 如果已实例化,它将返回已实例化的对象)。

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

关于angularjs - 请用一个清晰​​的例子解释 AngularJS $injector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16499358/

相关文章:

AngularJS 重定向到数据保存后查看

javascript - 特定网址的 Angular 路由

javascript - 单击参数中的按钮时如何获取包含对象的选定单选按钮值

javascript - 单击外部时如何关闭 Angular-bootstrap 弹出窗口

javascript - 两种方式绑定(bind)不适用于带有angularjs的模态(子 Controller )中的变量

javascript - localStorageService.set 返回 "isUndefined is not defined"

javascript - AngularJS $http 没有定义,尽管它是

javascript - 插件的 Angular 和 jquery 动态绑定(bind)

javascript - indexOf 在 AngularJS 中删除了错误的项目

javascript - 带有 JSON 对象的 Angular js 中的图表