发表于: 2017-05-29 22:14:09

1 1037


今天完成的事情:

模块module:

AngularJS使用模块化的组织方式,和依赖注入的设计。这使得模块之间耦合度较低,模块更容易复用。

一个Module通常对应一个js文件,其中可以包括Controller、Service、Filter、Directive等。 

模块的组成如下:

接着在模板中,使用上面声明的helloApp模块作为Angular APP:


依赖注入(DI):

DI,就是指对象是被动接受依赖类而不是自己主动去找,换句话说就是指对象不是从容器中查找它依赖的类,而是在容器实例化对象的时候主动将它依赖的类注入给它。

AngualrJs中可用来注入的有三种类型,service、factory、provider,这三种写法不样,用法也都不一样。其中,service只实例化一次,其实就是单例模式的思想。无论我们在什么地方注入我们的service,将永远使用同一个实例。

三者的关系可以看成是下图:


三者区别:

1) 用 Factory 就是创建一个对象,为它添加属性,然后把这个对象返回出来。你把 service 传进 controller 之后,在 controller 里这个对象里的属性就可以通过 factory 使用了。

2) Service 是用"new"关键字实例化的。因此,你应该给"this"添加属性,然后 service 返回"this"。你把 service 传进 controller 之后,在controller里 "this" 上的属性就可以通过 service 来使用了。

3) Providers 是唯一一种你可以传进 .config() 函数的 service。当你想要在 service 对象启用之前,先进行模块范围的配置,那就应该用 provider。

4)Factory/service是第一个注入时才实例化,而provider不是,它是在config之前就已实例 化好。



明天计划的事情:

继续学习angularJS


遇到的问题:

暂无


收获:

如上。


返回列表 返回列表
评论

    分享到