zoukankan      html  css  js  c++  java
  • AngularJS 依赖注入

      依赖注入的作用是让框架帮你处理重要对象的生命周期的管理,不需要你显式地进行管理(对象构造和销毁)。这样能够让开发人员能够专注于应用的业务部分。

      Angular的injector子系统负责创建组件,解析依赖,并将其按需提供给其他组件。每个Angular应用都有一个injector。Angular在应用的启动阶段(bootstrap, 见AngularJS启动过程)会创建一个injector。

    injector针对每个可注入组件只创建一个实例(调用injector.instantiate方法),创建之后会将其缓存,以备后续访问。如图:
                                     
     
      模块中定义了各种应用需要的服务,注意模块只是定义了服务,而并没有真正地创建它们,创建的只是一个等待注入器来执行的任务。真正的创建是通过注入器来完成的,当模块被加载到注入器的时候,注入器就会知道被加载的模块中定义了哪些任务,从而介入到这个创建相应服务的任务中来。另外,AngularJS全面实现了延迟初始化,也就是说,当这个对象没有被别人需要的时候,它是不会被创建的,对性能提高有一定帮助,加快了AngularJS启动速度。
      前边也说了,被注入的对象是单例对象,创建一次就可以被到处使用,使用的是同一对象,例如,你想在多个Controller中使用同一数据或逻辑,可以创建Service、Value、Constant等,注入到多个Controller中,它们是共享同一个服务对象。
      可用于依赖注入的组件:
        1、value
        2、factory
        3、service
        4、provider
        5、constant

      注入点:

        1、模块中定义的directive,factory,filter,provider,controller,animation、decorator。

        2、模块中的config函数,run函数。

  • 相关阅读:
    day01--计算机硬件基础笔记
    22 Jun 18 Django,ORM
    21 Jun 18 Django,ORM
    20 Jun 18 复习, mysql
    20 Jun 18 Django,ORM
    19 Jun 18 复习, 正则表达式
    19 Jun 18 Django
    15 Jun 18 复习, shutil模块
    15 Jun 18 Django
    14 Jun 18 复习, form表单
  • 原文地址:https://www.cnblogs.com/shawnhu/p/8465798.html
Copyright © 2011-2022 走看看