AngularJS简介
AngularJS是什么? AngularJS的官方文档是这样介绍它的: 完全使用JavaScript编写的客户端技术。同其他历史悠久的Web技术(HTML、CSS和JavaScript)配合使用,使Web应用开发比以往更简单、更快捷。 AngularJS主要用于构建单页面Web应用。它通过增加开发人员和常见Web应用开发任务之间的抽象级别,使构建交互式的现代Web应用变得更加简单。 AngularJS的开发团队将其描述为一种构建动态Web应用的结构化框架。 AngularJS使开发Web应用变得非常简单,同时也降低了构建复杂应用的难度。它提供了开发者在现代Web应用中经常要用到的一系列高级功能,例如: 1.解耦应用逻辑、数据模型和视图; 2. Ajax服务; 3.依赖注入; 4.浏览历史(使书签和前进、后退按钮能够像在普通Web应用中一样工作); 5.测试; 6.更多功能。
AngularJS中的数据绑定: 要使用AngularJS的功能,只需要在HTML页面中引用angular.js,并在某个DOM元素上明确设置ng-app属性即可。ng-app属性声明所有被其包含的内容都属于这个AngularJS应用。只有被具有ng-app属性的DOM元素包含的元素才会受AngularJS影响。 自动数据绑定使我们可以将视图理解为模型状态的映射。当客户端的数据模型发生变化时,视图就能反映出这些变化,并且不需要写任何自定义的代码,它就可以工作。 AngularJS会记录数据模型所包含的数据在任何特定时间点的值,而不是原始值。当AngularJS认为某个值可能发生变化时,它会运行自己的事件循环来检查这个值是否变“脏”。如果该值从上次事件循环运行之后发生了变化,则该值被认为是“脏”值。这也是Angular可以跟踪和响应应用变化的方式。这个事件循环会调用$digest()循环。这个过程被称作脏检查(dirty checking)。脏检查是检查数据模型变化的有效手段。当有潜在的变化存在时,AngularJS会在事件循环时执行脏检查来保证数据的一致性。 双向数据绑定(bi-directional)意味着如果视图改变了某个值,数据模型会通过脏检查观察到这个变化,而如果数据模型改变了某个值,视图也会依据变化重新渲染。
AngularJS模块: AngularJS允许我们使用angular.module()方法来声明模块,这个方法能够接受两个参数,第一个是模块的名称,第二个是依赖列表,也就是可以被注入到模块中的对象列表: angular.module('myApp',[]); 这个方法相当于AngularJS模块的setter方法,是用来定义模块的。 调用这个方法时如果只传递一个参数,就可以用它来引用模块。例如,可以通过以下代码来引用myApp模块: // 这个方法用于获取应用 angular.module('myApp') 这个方法相当于AngularJS模块的getter方法,用来获取对模块的引用。 接下来,就可以在angular.module('myApp')返回的对象上创建我们的应用了。 开发大型应用时,我们会创建多个模块来承载业务逻辑。将复杂的功能分割成不同的模块,有助于单独为它们编写测试。 下面是angular.module()的参数列表:name(字符串),name是模块的名称,字符串变量;requires(字符串数组),requires包含了一个字符串变量组成的列表,每个元素都是一个模块名称,本模块依赖于这些模块,依赖需要在本模块加载之前由注入器进行预加载。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |