AngularJS深度剖析与最佳实践PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:雪狼,破狼,彭洪伟编著
- 出 版 社:北京:机械工业出版社
- 出版年份:2016
- ISBN:9787111520962
- 页数:322 页
第1章 从实战开始 1
1.1 环境准备 1
1.2 需求分析与迭代计划 3
1.3 创建项目 11
1.3.1 Yeoman 11
1.3.2 FrontJet 13
1.4 实现第一个页面:注册 18
1.4.1 约定优于配置 18
1.4.2 定义路由 19
1.4.3 把后端程序跑起来 24
1.4.4 连接后端程序 26
1.4.5 添加验证器 28
1.4.6 “错误信息提示”指令 31
1.4.7 用过滤器生成用户友好的提示信息 33
1.4.8 实现自定义验证规则 34
1.4.9 实现图形验证码 36
1.5 实现更多功能:主题 38
1.5.1 实现主题列表 38
1.5.2 实现过滤功能 40
1.5.3 实现分页功能 42
1.5.4 实现主题树 44
1.5.5 实现递归主题树 56
1.5.6 实现“查看详情”功能 58
1.6 实现AOP功能 59
1.6.1 实现登录功能 60
1.6.2 实现对话框 65
1.6.3 实现错误处理功能 67
1.7 实战小结 68
第2章 概念介绍 70
2.1 什么是UI 70
2.2 模块 71
2.3 作用域 72
2.4 控制器 73
2.5 视图 74
2.6 指令 75
2.6.1 组件型指令 76
2.6.2 装饰器型指令 79
2.7 过滤器 81
2.8 路由 82
2.9 服务 83
2.9.1 服务 85
2.9.2 工厂 86
2.10 承诺 88
2.11 消息 92
2.12 单元测试 93
2.12.1 MOCK的使用方式 94
2.12.2 测试工具与断言库 95
2.13 端到端测试 96
第3章 背后的原理 98
3.1 Angular中的MVVM模式 98
3.2 Angular启动过程 102
3.3 依赖注入 106
3.3.1 什么是依赖注入 106
3.3.2 如何在JavaScript中实现DI 107
3.3.3 Angular中的DI 108
3.3.4 DI与minify 109
3.4 脏检查机制 110
3.4.1 浏览器事件循环和Angular的MVW 110
3.4.2 Angular中的$watch函数 111
3.4.3 Angular中的$digest函数 113
3.4.4 Angular中的$apply 116
3.5 指令的生命周期 117
3.5.1 Injecting 118
3.5.2 compile和link过程 120
3.6 Angular中的$parse、$eval和$observe、$watch 122
3.6.1 $parse和$eval 122
3.6.2 $observe和$watch 124
3.6.3 使用场景 125
3.7 REST 127
3.7.1 REST的六大要点 128
3.7.2 REST的四个级别 130
3.8 跨域 131
3.8.1 同源策略与跨域 131
3.8.2 如何解决跨域问题 132
3.9 前端安全技术 133
3.9.1 前端攻击的基本原理和类型 133
3.9.2 前端安全与前后端分工 136
3.9.3 移动时代的特殊挑战 137
3.9.4 安全无止境 138
第4章 最佳实践 140
4.1 调整开发协作流程 140
4.2 前后端分离部署 143
4.3 样式中心页 144
4.4 CSS的扩展语言与架构 145
4.5 HTML的表意性 146
4.6 table,天使还是魔鬼 148
4.7 测试什么?怎么测? 150
4.7.1 准备工作 150
4.7.2 如何测试Controller 151
4.7.3 如何测试Service 151
4.7.4 如何测试Filter 152
4.7.5 如何测试组件型指令 152
4.7.6 如何测试装饰器型指令 153
4.7.7 如何测试网络请求 153
4.7.8 如何测试setTimeout类功能 153
4.7.9 如何Mock Service 154
4.8 如何设计友好的REST API 155
4.8.1 URI 155
4.8.2 资源拆分 155
4.8.3 资源命名 155
4.8.4 方法 156
4.8.5 返回值 157
4.8.6 综合案例:分页API 159
4.9 使用controller as vm方式 160
4.9.1 源码分析 161
4.9.2 推荐用法和优势 161
4.9.3 路由中的controller as语法 162
4.9.4 指令中的controller as语法 163
4.10 移除不必要的$watch 163
4.10.1 双向绑定和watchers函数 164
4.10.2 其他指令中的watchers函数 166
4.10.3 慎用$watch和及时销毁 167
4.10.4 one-time绑定 168
4.10.5 滚屏加载 170
4.10.6 其他 171
4.11 总是用ng-model作为输出 172
4.12 用打包代替动态加载 173
4.13 引入Angular-hint 173
4.13.1 通过batarang插件使用angular-hint 174
4.13.2 手动集成angular-hint 174
4.13.3 Module hints 175
4.13.4 Controllerhints 176
4.13.5 Directive hints 176
第5章 Angular开发技巧 178
5.1 $timeout的妙用 178
5.2 ngTemplate寄宿方式 182
5.3 在非独立作用域指令中实现scope绑定 185
5.4 表单验证错误信息显示 186
5.5 Angular中的AOP机制 187
5.5.1 拦截器案例 188
5.5.2 拦截器源码分析 192
5.5.3 Angular中的装饰器 195
5.5.4 Angular装饰器源码分析 197
5.6 Ajax请求和响应数据的转换 198
5.6.1 兼容老式API 198
5.6.2 Ajax请求配置的源码分析 201
5.7 在代码中注入Filter 205
5.7.1 复用指定Filter 205
5.7.2 重用多个Filter案例 206
5.7.3 Filter源码分析 207
5.8 防止Angular表达式闪烁 208
5.8.1 表达式闪烁解决方案 208
5.8.2 ngCloak源码分析 208
5.8.3 最佳实践 209
5.9 实现前端权限控制 209
5.9.1 事件方案 210
5.9.2 resolve方案 211
5.10 依赖注入——$injector 214
5.10.1 $injector的创建 214
5.10.2 $injector注入方式 215
5.10.3 $injector的妙用 217
5.11 在指令中让使用者自定义模板 219
5.12 跨多个节点的ng-if或ng-repeat 223
5.13 阻止事件冒泡和浏览器默认行为 224
5.14 动态绑定HTML 226
第6章 Angular常见的“坑” 229
6.1 module函数的声明和获取重载 229
6.2 ngModel绑定值不更改 232
6.2.1 验证引起的model值不显示 233
6.2.2 原型链继承问题 235
6.3 指令不生效 239
6.4 Angular中锚点的使用 240
6.5 ngRepeat验证失效 241
6.5.1 简单的验证显示 242
6.5.2 复杂的验证显示 242
6.6 有些指令需要唯一的根节点 243
6.7 指令优先级-Priority 243
6.8 ngRepeat报重复内容错误 244
6.9 单元测试中promise不触发 245
第7章 编码规范 247
7.1 目录结构 248
7.1.1 按照类型优先、业务功能其次的组织方式 248
7.1.2 按照业务功能优先、类型其次的组织方式 249
7.2 模块组织 250
7.2.1 命名 250
7.2.2 Module声明 250
7.2.3 依赖声明 251
7.2.4 Module组件声明 251
7.3 控制器 252
7.3.1 命名 252
7.3.2 ControllerAs vm声明 252
7.3.3 初始化数据 253
7.3.4 DOM操作 253
7.3.5 依赖的声明 253
7.3.6 精简控制器逻辑 254
7.3.7 禁止用$rootScope传递数据 255
7.3.8 格式化显示逻辑 255
7.3.9 Resolve 255
7.4 服务 256
7.4.1 命名 256
7.4.2 代码复用 256
7.4.3 使用场景 256
7.4.4 Service返回值 257
7.4.5 缓存不变数据 257
7.4.6 RESTful 257
7.5 过滤器 258
7.5.1 命名 258
7.5.2 重用已有Filter 258
7.5.3 禁止复杂的Filter 258
7.6 指令 259
7.6.1 命名 259
7.6.2 Template声明 259
7.6.3 link函数的scope参数命名 259
7.6.4 pre-link和post-link 260
7.6.5 DOM操作 260
7.6.6 Directive分类 260
7.6.7 Directive不是封装jQuery代码“天堂” 260
7.6.8 自动回收 261
7.7 模板 261
7.7.1 表达式绑定 261
7.7.2 Src、Href问题 261
7.7.3 Class优于Style 262
7.8 工具 262
7.9 其他 264
7.9.1 内置$服务替代原生服务 264
7.9.2 Promise解决回调地狱 264
7.9.3 减少$watch 265
7.9.4 TDD 265
第8章 工具 267
8.1 WebStorm与IntelliJ 267
8.2 Chrome 269
8.3 Gulp 273
8.4 Swagger 274
8.4.1 前后端分离 274
8.4.2 Swagger 275
8.4.3 契约测试 277
8.5 TSD 277
8.6 Postman 280
8.6.1 安装 280
8.6.2 功能介绍 280
第9章 杂项知识 282
9.1 Angular 2.0 282
9.2 SEO 284
9.3 IE兼容性 287
9.3.1 问题概述 287
9.3.2 问题分类 288
9.4 访问统计 292
9.5 响应式布局 293
9.6 国际化 294
9.7 动画 296
9.7.1 CSS动画 296
9.7.2 JavaScript动画 297
9.8 手机版开发 298
9.8.1 Hybrid应用 298
9.8.2 Ionic 300
附录A 相关资源 301
后记 提问的智慧 318
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《语文教育教学实践探索》陈德收 2018
- 《彼得·布鲁克导演实践研究》邓小玲著 2019
- 《反思性实践》胡红梅, 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《环境影响评价公众参与理论与实践研究》樊春燕主编 2019
- 《学校特色教育探索与实践》管升起著 2019
- 《深度学习与飞桨PaddlePaddle Fluid实战》于祥 2019
- 《深度说服》(英国)尼克·鲍多克 2019
- 《麦肯锡精英这样实践基本功》(日)户塚隆将著 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019