发表于: 2017-01-07 02:10:01
1 1373
今天完成的事:学习了依赖注入
学习了师弟的PPT
明天计划的事:继续angularjs的学习
遇到的问题:今天学习了师弟讲的关于js中的事件委托的PPT,对于事件委托有了一个了解,事件委托的主要目的就是减少DOM的操作,所以运用事件委托让原本可能需要进行100次DOM节点交互的操作,只需要一次就可以搞定了,极其的方便快捷,大大的提高了性能。
而依赖注入有下面这张图可以直观的认识:
$provide
是一个服务,在Auto
模块中这个服务下面有好多方法,是用来定义供应商
而供应商是用来提供服务的,被注入来注入去的东西就是供应商们提供的服务了
1.constant:定义常量用的,它定义的值不能被改变,它可以被注入到任何地方,但是不能被装饰器(decorator
)装饰
2.value:可以是string
,number
甚至function
,它和constant
的不同之处在于,它可以被修改,不能被注入到config
中,但是它可以被decorator
装饰
3.service:它是一个可注入的构造器,在AngularJS
中它是单例的,用它在Controller
中通信或者共享数据都很合适
4.factory:它是一个可注入的function
,它和service
的区别就是:factory
是普通function
,而service
是一个构造器(constructor
),这样Angular
在调用service
时会用new
关键字,而调用factory
时只是调用普通的function
,所以factory
可以返回任何东西,而service
可以不返回(可查阅new关键字的作用)
5.provider:provider
是他们的老大,上面的几乎(除了constant
)都是provider
的封装,provider
必须有一个$get
方法,当然也可以说provider
是一个可配置的factory
6.decorator:这个比较特殊,它不是provider
,它是用来装饰其他provider
的,而前面也说过,他不能装饰Constant
,因为实际上Constant
不是通过provider()
方法创建的。
总的来说:
收获:学习了事件委托以及依赖注入。最近想找一本有关于angularjs的书,不知道各位师兄弟有没有什么推荐。
评论