AngularJS是一款来自Google的前端JS框架,它的核心特性有:MVC、双向数据绑定、指令和语义化标签、模块化工具、依赖注入、HTML模板,以及对常用工具的封装,例如$http、$cookies、$location等。AngularJS框架的体积非常小,但是设计理念和功能却非常强大,值得前端开发者深入学习。 本书对AngularJS框架的核心特性做了全面的介绍,包括常用的开发工具和开发环境。作为国内**本关于AngularJS的书籍,本书是学习AngularJS的**入门工具。
我们都希望开发更小型、更轻量的Web应用,让创建应用更加容易,并且当项目变大时仍然易于测试、扩展和维护。这本手册将为你介绍AngularJS,它是一个开源的JavaScript框架,它使用MVC架构、数据绑定、客户端模板以及依赖注入等技术,从而为构建Web应用创建急需的结构。 本书的作者是两位在Google负责AngularJS框架的工程师,他们将引领读者概览整个框架的核心特性,并构建一款可运行的AngularJS应用,内容涵盖布局、测试、编译及调试整个过程。通过这个过程,你将会学到AngularJS是怎样降低Web应用复杂性的。
■ 深入理解Angular的构件,学习它们是如何协同工作的。
■ 使用MVC模式分离控制逻辑、数据以及渲染职责,从而获得*大程度的灵活性。
■ 利用客户端模板在浏览器中装配你的完整应用。
■ 利用AngularJS的指令,用声明式语法来扩展HTML。
■ 使用$http服务与服务器交互并实现简单的缓存。
■ 利用依赖注入改进重构、测试以及多种环境下的设计。
■ 获得Web应用中常见问题的代码示例。
关于Angular 的起源,我可以追溯到2009 年的Google Feedback 项目。当时,对于项目的开发速度以及如何编写可测试代码的问题,我们已经经受了几个月的折磨。6 个月时,我们开发了差不多17000 行前端代码。这时候,团队中的一个成员Misko Hevery 做出了一个大胆的宣言:利用他自己业余时间所开发的一个开源库,他可以在两周之内把目前所有东西重写一遍。
我当时想,两周的时间并不会给我们造成太大的影响,同时我们也接受了Misko 努力构建一些东西的想法。然而Misko *终还是估算错了时间,他用了三个星期。但是,我们所有人还是被他深深地震撼了,更让我们感到震撼的是,他所开发的新应用的代码量从原来的17000 行压缩到了1500 行。看起来,Misko 的东西值得深入推广。Misko 和我决定,围绕他所提倡的理念组建一个团队,这个简单的理念就是:简化对web 开发者的经验要求。Shyam Seshadri,也就是本书的合著者,后来继续领导GoogleFeedback 团队开发了**款搭载Angular 的应用。
从那时起,我们在大家的指导下继续开发Angular。给予我们指导的人有的来自Google自己的团队,也有来自全球的数以百计的开源贡献者。数千名开发者在他们的日常工作中依赖Angular,并且发展成了一个优质的支持者网络。
我们也非常期望能够接受你的指导。
排版约定
在本书中将会使用以下排版和印刷约定。
斜体(Italic)
表示新的术语、URL、邮箱地址、文件名以及文件的扩展名。
等宽字体(Constant width)
用于代码清单,以及段落中所引用的编程元素,例如变量、函数名称、数据库、数据类型、环境变量名称、语句以及关键字。
等宽加粗字体(Constant width bold)
用于显示需要用户输入的文本字面值,例如命令或者文本。
等宽斜体(Constant width italic)
用于显示应该被替换的文本,这些文本会被用户所输入的值或根据上下文所决定的值所替换。
使用实例代码
本书的目标是帮助你完成工作。总地来说,你完全可以将本书中所包含的实例代码用在你的程序和文档中。你没有必要联系我们来获得授权,除非你想对代码做出大规模的重构。举例来说,如果你编写一个程序,里面将会使用几段来自本书中的代码,这种行为并不需要获得授权;而出售或者分发O'Reilly 书籍中实例代码的CD-ROM 就需要获得授权;引用本书中的内容或者本书中的实例代码来回答问题不需要授权;而把本书中的大量代码合并到你的产品文档中就需要授权。
2.在表单输入项上使用ng -model。与表达式类似,ng-model上指定的模型参数同样工作在外层控制器内。唯一的不同点在于,这样会在表单项和指定的模型之间建立双向绑定关系。
使用$watch监控数据模型的变化
在scope内置的所有函数中,用得*多的可能就是$watch函数了,当你的数据模型中某一部分发生变化时,$watch函数可以向你发出通知。你可以监控单个对象的属性,也可以监控需要经过计算的结果(函数),实际上只要能够被当作属性访问到,或者可以当作一个JavaScript函数被计算出来,就可以被$watch函数监控。它的函数签名为$watch(watchFn, watchAction, deepWatch)其中每个参数的详细含义如下。
watchFn
该参数是一个带有Angular表达式或者函数的字符串,它会返回被监控的数据模型的当前值。这个表达式将会被执行很多次,所以你要保证它不会产生其他副作用。也就是说,要保证它可以被调用很多次而不会改变状态。基于同样的原因,监控表达式应该很容易被计算出来。如果你使用字符串传递了一个Angular表达式,那么它将会针对调用它的那个作用域中的对象而执行。
watchAction
这是一个函数或者表达式,当watchFn发生变化时会被调用。如果是函数的形式,它将会接收到watchFn的新旧两个值,以及作用域对象的引用。其函数签名为function(newValue, oldValue, scope)。
deepWatch
如果设置为true,这个可选的布尔型参数将会命令Angblar去检查被监控对象的每个属性是否发生了变化。如果你想要监控数组中的元素,或者对象上的所有属性,而不只是监控一个简单的值,你就可以使用这个参数。由于Angular需要遍历数组或者对象,如果集合比较大,那么运算负担就会比较重。
$watch函数会返回一个函数,当你不再需要接收变更通知时,可以用这个返回的函数注销监控器。
……
Brad Green是Google公司AngularJS项目的技术经理。他同时还直接负责可访问性和技术支持方面的工作。 Shyam Seshadri是Fundoo Solutions公司的老板兼CEO,同时经营AngularJS商店,并且致力于为印度市场提供创造性和有趣的产品。
本书系统而深入地介绍了现代数字信号处理的基础和一些广泛应用的算法。全书共10章,分为四个部分。第一部分包括第1章~第4章,介
《山花灿烂寂寞红》内容简介:萧红编著的《山花灿烂寂寞红》是一本作品综合集,她的作品多取材于家乡,以其敏锐纤细的艺术感受力,
《Ruby元编程(第2版)》在大量剖析实例代码的基础上循序渐进地介绍Ruby特有的实用编程技巧。通过分析案例、讲解例题、回顾Ruby类
《脑卒中:与时间赛跑》内容简介:一定要知道的脑卒中预防与康复知识,上海交通大学医学院附属瑞金医院康复团队暖心制作。全书通过
《亚非诸国文学研究的学术历程》内容简介:本书是《中国外国文学研究的学术历程》总12卷之第12卷。本卷主要介绍亚非地区除日本、印
《重启:中医新解》内容简介:中医是人们在与疾病长期斗争的过程中归纳总结而得的一门医学。这门建立在元气、阴阳、五行理论之上,
《少年读西游》内容简介:这是一本为青少年解读《西游记》的书。著名学者李天飞专注《西游记》研究多年,积累参考上千种文献,然而
《区域(2016年第2辑/总第6辑)》内容简介:本辑内容涉及:在广阔的世界关系中阐释中国“史”的传统及其意义;讨论欧洲民族国家兴起
主板维修技能实训(芯片级) 内容简介 本书结合大量图解与实例,循序渐进地讲解了主板的结构和电路组成,常用维修工具,元器件好坏的判定方法,总线插槽和测试点,以及接...
电商圈第一本自媒体著作《做自己——鬼脚七自媒体第一季》出版以来,深受广大读者喜爱。本书是鬼脚七的第二本书《爱生活——鬼脚
《数据中台产品经理》内容简介:随着移动互联网的快速发展,“中台”纷纷在国内大小互联网企业快速落地。前有阿里云智能事业群对外
《理财防骗手册(好规划专刊002期)》内容简介:MMM和百川币,月赚30%投的是什么?号称“低风险、高收益”的原油投资靠谱吗?电信、
《ACM图灵奖:计算机发展史的缩影(1966-2006)(第3版)》介绍了51位ACM图灵奖获得者的工作和事迹。通过对20世纪下半叶及21世纪初有代
《安德森18首长笛练习曲 OP.41》内容简介:安德森长笛练习曲系列教程是欧美地区针对长笛演奏使用很普遍的一套教材,在长笛技巧性的
操作系统概念(第六版)OPERATING SYSTEM CONCEPTS 本书特色 本套教学用书的特点:权威性——教育部高等教育司推荐、教育部高等学校信息科学与...
《张文鹤护肤指南》内容简介:本书为北京三甲医院小儿皮肤科专家、抖音2000万+大V仙鹤大叔•张文鹤20年临床经验总结。详解青春痘的分
《国外电子与通信教材系列·数字与模拟通信系统(第6版)(英文版)》在前五版的基础上改编而成,系统地介绍了现代通信系统的基本理论
生产系统仿真——plant simulation 应用教程 本书特色 周金平编著的《生产系统仿真——plantsimulation应用教程》的一个显著...
《Docker从入门到实战》内容简介:本书从Docker的相关概念与基础知识讲起,结合实际应用,通过不同开发环境的实战例子,详细介绍了
《午夜降临前抵达》内容简介:本书是作家刘子超的旅行文学作品。在这本书里,他深入欧洲的中部,展开了一次逃脱和寻找的漫游。中欧