在讲angularjs的模块之前,我们先介绍一下angular的一些知识点:
AngularJS是纯客户端技术,完全用Javascript编写的。它使用的是网页开发的常规技术(HTML,CSS,Javascript),目的是让网页应用开发更快更容易。
AngularJS简化应用开发的一个重要方法是,将一个些通用的低级开发操作包装起来提供给开发者。AngularJS会自动处理好这些低级操作。它们包括:
1.DOM操作 2.设置事件的监听 3.输入验证,因为AngularJS会处理大部分这些操作,所以开发者就能更多的专注在应用的业务逻辑上,更少地编写那些重复性的、易错的、低级的代码。
在AngularJS简化开发的同时,它也为客户端带来了一些精巧的技术,它们包括:
1.数据、业务逻辑、视图的分离 2.数据和视图的自动绑定 3.通用服务 4.依赖注入(主要用于聚合服务) 5.可扩展的HTML编译器(完全由JavaScript编写) 6.易于测试 7.客户端对这些技术的需求其实已经存在很久了。
同时,你还可以用AngularJS来开发单页或者多页的应用,不过其主要还是用来开发单页的。 AngularJS支持浏览器的历史操作,向前,向后按钮,单页应用中的收藏操作。
接下来,我们来详细讲解angularJS的模块。
大部分应用都有一个主方法用来实例化、组织、启动应用。AngularJS应用没有主方法,而是使用模块来声明应用应该如何启动。这种方式有以下几个优点:
1.启动过程是声明式的,所以更容易懂。 2.在单元测试是不需要加载全部模块的,因此这种方式有助于写单元测试。 3.可以在特定情况的测试中增加额外的模块,这些模块能更改配置,能帮助进行端对端的测试。 4.第三方代码可以打包成可重用的模块。 5.模块可以以任何先后或者并行的顺序加载(因为模块的执行本身是延迟的)。
举个例子: