• 精通AngularJS
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

精通AngularJS

26.07 3.3折 79 全新

仅1件

河北保定
认证卖家担保交易快速发货售后保障

作者Pawel、Peter Bacon Darwin 著;李路、王永强、马海波 译

出版社华中科技大学出版社

出版时间2014-10

版次1

装帧平装

货号

上书时间2024-09-15

习文图书的书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
图书标准信息
  • 作者 Pawel、Peter Bacon Darwin 著;李路、王永强、马海波 译
  • 出版社 华中科技大学出版社
  • 出版时间 2014-10
  • 版次 1
  • ISBN 9787568003964
  • 定价 79.00元
  • 装帧 平装
  • 开本 16开
  • 纸张 胶版纸
  • 页数 368页
  • 字数 448千字
  • 原版书名 Mastering Web Application Development with AngularJS
【内容简介】
  AngularJS诞生于Google,已用于开发多款Google产品。它是一套JavaScript前端框架,用于开发当下流行的数据驱动的单页面Web应用。其核心特性是:MVC、模块化、自动双向数据绑定、语义化标签、依赖注入等。《精通AngularJS》深入浅出地讲解了AngularJS的开发概念和原理,并通过丰富的开发实例向读者展示了构建复杂应用的完整过程,包括学习使用AngularJS特有的基于DOM的模板系统,实现复杂的后端通信,创建漂亮的表单,制作导航,使用依赖注入系统,提高Web应用的安全性,使用Jasmine开展单元测试,等等。
【作者简介】
  Pawel Kozlowski,有15年以上的Web开发经验,接触过多种Web技术、语言和平台。他精通客户端和服务器端编程,并始终在寻找能提高生产率的工具和流程。Pawel是自由和开源软件的坚定支持者,他在AngularJS 社区非常活跃,为AngularJS项目贡献了大量的代码。他也对Angular UI (AngularJS的配套框架)有所贡献,并为AngularJS 提供了Twitter Bootstrap 相关的指令(directives)。不写代码时,Pawel 常在会议与活动上为AngularJS布道。

  Peter Bacon Darwin,已经积累了20年以上的编程经验,他在.NET发布之前,就已经用它工作了。他还对IronRuby的开发有所贡献。他曾在Avanade和IMGROUP做IT顾问。退休后,自由开发和照顾孩子占用了他大部分的时光。Peter是AngularJS社区的名人。他最近加入了Google的AngularJS团队。他还是Angular UI项目的创始成员。他曾在Devoxx UK和其他活动中发表过有关AngularJS的演讲,并开办过AngularJS的培训课程。他希望帮助企业更好地利用AngularJS。
【目录】
序1
第1章Angular之禅7
11邂逅AngularJS7
熟悉框架8
参与AngularJS项目8
社区8
在线学习资源9
库和扩展9
工具9
Batarang10
Plunker与jsFiddle10
IDE扩展和插件10
12AngularJS速成10
HelloWorld——AngularJS示例10
双向数据绑定12
AngularJS中的MVC模式12
鸟瞰13
深入作用域15
视图21
模块与依赖注入26
模块26
协作对象27
注册服务29
模块的生命周期33
模块依赖35
13AngularJS和其他框架38
jQuery与AngularJS39
苹果与橙子40
窥视未来41
14总结41
第2章构建与测试43
21介绍示例应用44
熟悉问题领域44
技术栈45
持久化存储46
MongoLab46
服务器端环境47
第三方JavaScript库48
BootstrapCSS48
22构建系统48
构建系统准则49
自动化所有事情49
尽早报错,清晰报错49
不同的工作流,不同的命令50
构建脚本同样是代码50
工具50
Gruntjs51
测试库与工具51
Jasmine51
Karmarunner52
23组织文件和目录52
根目录52
进入源代码目录54
AngularJS的特定文件54
轻装上路56
深入测试目录57
文件命名约定57
24AngularJS模块和文件57
一个文件,一个模块58
模块内部59
注册provider的不同语法59
声明配置和运行块的语法61
25自动化测试62
单元测试63
剖析Jasmine测试64
测试AngularJS对象65
测试服务65
测试控制器67
Mock对象和异步代码测试68
端对端测试70
日常工作流71
Karmarunner的提示与技巧72
执行测试子集73
调试73
26小结74
第3章与后端服务器通信75
31使用$http进行XHR和JSONP请求75
熟悉数据模型和MongoLabURLs76
$httpAPI快速导览76
配置对象说明77
转换请求数据78
处理HTTP响应79
转换响应数据79
处理同源政策约束79
利用JSONP克服同源政策约束80
JSONP的限制81
利用CORS克服同源政策约束81
服务器端代理83
32promiseAPI与$q84
工作中的promise和$q服务85
学习$q服务的基础知识85
promise是第一类JavaScript对象87
聚合回调88
注册回调和承诺的生命周期88
异步动作的链式调用89
关于$q的其他91
AngularJS中的$q集成93
33promiseAPI与$http94
34与RESTful端点通信95
$resource服务95
构造级与实例级方法97
$resource创建异步方法100
$resource服务的限制101
使用$http自定义REST适配器101
35使用$http的高级特性104
截取响应104
36测试与$http交互的代码106
37小结108
第4章显示与格式化数据109
41引用指令109
42显示表达式的求值结果110
插值指令110
利用ngBind渲染模型值111
AngularJS表达式中的HTML内容111
43条件化显示112
根据条件包含内容块114
44用ngRepeat指令渲染集合114
熟悉ngRepeat指令115
特殊变量115
迭代对象的属性116
ngRepeat模式117
列表和细节117
改动表格、行和类119
45DOM事件处理器120
46基于DOM的模板121
习惯烦琐的语法121
ngRepeat和多个DOM元素122
不能在运行时修改的元素和属性123
自定义HTML元素与IE的老版本124
47使用过滤器处理模型变换124
内置过滤器125
格式化过滤器125
数组变换过滤器125
编写自定义过滤器——分页示例131
从JavaScript代码中访问过滤器133
过滤器做什么与不做什么134
过滤器与DOM操作135
过滤器中代价高昂的数据变换136
不稳定的过滤器136
48摘要138
第5章创建高级表单139
51AngularJS表单与传统表单的比较139
介绍ngModel指令141
52创建用户信息表单142
53理解输入指令143
添加所需验证143
使用基于文本的输入(text、textarea、e-mail、URL、number)143
使用checkbox输入144
使用radio输入145
使用select输入145
提供简单的字符串options145
利用ngOptions指令提供动态options146
select指令与空的options148
理解select和对象判等149
选择多个options150
运用传统的HTMLhiddeninput字段150
嵌入来自服务器的值150
提交传统的HTML表单151
54详解ngModel数据绑定151
理解ngModelController151
在模型与视图之间转换值152
追踪值是否变化152
跟踪input字段有效性153
55校验AngularJS表单153
理解ngFormController153
运用name属性将表单附加到作用域上154
为用户信息表单增加动态行为154
显示验证错误155
让保存按钮无效156
使原生浏览器校验无效157
56在其他表单中嵌套表单157
将子表单作为可重用组件157
57重复子表单158
验证重复输入159
58处理传统的HTML表单提交161
直接向服务器提交表单161
处理表单提交事件161
使用ngSubmit处理表单提交162
使用ngClick处理表单提交162
59重置用户信息表单162
510摘要164
第6章导航165
61单页Web应用的URL166
HTML5之前的HashbangURL166
HTML5和historyAPI167
62使用$location服务168
理解$location服务API与URL的关系169
哈希、页面内导航和$anchorScroll170
配置HTML5方式的URL171
客户端171
服务端171
使用$location导航172
根据路由构建页面173
路由映射URL174
定义路由时指定控制器174
导航的不足175
63使用AngularJS自带的路由服务175
基础路由定义175
显示匹配的路由内容176
匹配灵活的路由177
定义默认路由178
访问路由参数178
多个控制器重用局部模板178
路由改变时避免UI抖动179
取消路由更新181
64$route服务的局限182
一个路由只对应页面中的一个区域183
使用ng-include处理多个UI区域183
不支持嵌套路由184
65路由相关的模式及技巧185
处理链接185
创建可点击的链接186
兼容HTML5及hashbang模式186
链接外部页面187
组织路由定义187
将路由定义分离到多个模块188
减少路由定义的重复代码188
66总结189
第7章安全191
71提供服务端认证和授权192
处理未授权的访问192
提供服务端验证API192
72保护局部模板193
73阻止恶意攻击194
防止cookie监听、中间人攻击194
防止跨站脚本攻击195
确保AngularJS表达式内HTML内容的安全性195
允许不安全的HTML绑定196
净化HTML196
防止JSON注入攻击197
防止跨站请求伪造198
74客户端安全198
创建security服务199
显示登录表单200
创建安全的菜单及工具栏201
隐藏菜单项201
创建登录工具栏202
75支持客户端认证203
处理认证失败203
拦截响应204
HTTP响应拦截器204
创建securityInterceptor服务205
创建securityRetryQueue服务207
通知安全服务208
76防止导航到安全受限路由208
使用路由resolve函数209
创建授权服务210
77总结212
第8章创建自定义指令213
81什么是AngularJS指令214
理解内置指令214
在HTML标签中使用指令215
82指令的编译生命周期215
83为指令编写单元测试217
84定义指令218
85使用指令修改按钮样式219
编写一个按钮指令220
86理解AngularJS的组件指令222
编写一个分页指令222
为分页指令编写单元测试代码223
在指令中使用HTML模板224
从父作用域中隔离指令225
使用@插入属性226
使用=绑定数据227
使用&提供一个回调表达式227
实现分页组件228
为指令添加分页跳转回调229
87创建一个自定义验证指令230
需要其他指令的控制器231
可选的依赖控制器231
查找祖先元素的控制器232
使用ngModelController232
编写自定义验证指令的单元测试233
实现自定义验证指令235
88创建一个异步模型验证器235
模拟用户服务236
为异步验证编写测试代码237
实现异步验证指令238
89包装jQueryUIdatepicker指令239
为包装组件指令编写测试代码240
实现jQuerydatepicker指令242
810小结243
第9章创建自定义指令245
91使用嵌入245
在指令中使用嵌入245
在独立作用域指令中使用嵌入246
创建一个使用嵌入的提示指令246
理解指令定义中的replace属性247
理解指令定义中的transclude属性248
使用ng-transclude插入嵌入元素248
理解嵌入作用域248
92创建和使用嵌入函数250
使用$compile服务创建一个嵌入函数251
在嵌入时克隆原始元素251
在指令中访问嵌入函数252
通过编译函数中的transcludeFn来获取嵌入函数252
通过$transclude在指令控制器中获取嵌入函数253
使用嵌入创建一个if指令253
在指令中使用priority属性255
93理解指令控制器256
为指令控制器注入特殊依赖257
创建一个基于控制器的分页指令258
理解指令控制器和链接函数的区别258
注入依赖259
编译过程259
获取其他控制器260
获取嵌入函数261
创建一个手风琴指令套件261
在手风琴组件中使用指令控制器262
实现accordion指令263
实现accordion-group指令263
94控制编译过程265
创建一个?eld指令265
在指令中使用terminal属性267
使用$interpolate服务268
绑定验证信息269
动态加载模板269
设置?eld指令的模板270
95小结271
第10章创建为全球用户服务的AngularJS应用273
101使用本地化的符号和设置274
配置本地化设置模块274
使用已有的本地化设置275
本地化设置和AngularJS过滤器275
102处理翻译277
翻译AngularJS模板中的字符串277
使用过滤器278
使用指令279
翻译JavaScript代码中的字符串280
103范式、秘诀和技巧282
按照设定的地区初始化应用282
将地区标识作为URL一部分带来的问题283
切换地区284
针对日期、数字和货币的自定义过滤器285
104小结287
第11章开发健壮的AngularJS应用289
111理解AngularJS的内部运作机制290
AngularJS不是基于字符串的模板引擎290
响应DOM事件更新模型291
将模型变化传播给DOM291
同步DOM和模型变化292
Scope$apply——打开AngularJS世界的钥匙293
深入$digest循环295
整合300
112性能优化——设置期望值、测量、调节、并重复301
113AngularJS应用的性能优化303
优化CPU使用率303
加速$digest循环303
尽可能少进入$digest循环310
限制每个$digest循环的执行轮数312
优化内存占用312
尽可能避免深度监视312
注意监视表达式的大小314
ng-repeat指令314
ng-repeat指令中对集合的监视314
瞬间绑定大量监视315
114小结315
第12章打包和部署AngularJSWeb应用317
121提升网络相关的性能318
压缩静态资源318
AngularJS如何判断依赖关系318
编写会被安全压缩的JavaScript代码319
数组风格依赖注入的缺陷322
模板预加载323
使用
点击展开 点击收起

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP