迈向Angular 2
目录
序言 XV
第1章 Angular 2快速上手 1
Web的进化——新框架时代 2
ECMAScript的进化 2
Web Component 3
WebWorker 4
从AngularJS 1.x中学到的经验 5
Controller 6
Scope 7
依赖注入 7
服务端渲染 8
大规模应用 9
模板 10
脏值检测 12
本章小结 12
第2章 Augular 2应用的基础构件 14
Angular 2概念性简介 15
脏值检测 17
认识Angular 2中的组件 19
组件实战 20
Angular 2中的组件 22
管道 23
定义管道 24
脏值检测 25
传统的脏值检测 26
AngularJS 1.x中的脏值检测 27
增强AngularJS 1.x的脏值检测 29
理解服务 30
理解新的基于组件的路由机制 33
Angular 2中定义路由的语法 35
本章小结 36
第3章 TypeScript速成 37
TypeScript简介 37
编译时类型检查 38
文本编辑器和IDE的支持更好 38
TypeScript的更多特性 39
TypeScript用法 39
用npm安装TypeScript 40
运行我们的第一个TypeScript程序 40
TypeScript从ES2015和ES2016中引入的语法和特性 41
ES2015中的箭头函数 41
使用ES2015和ES2016中的类 43
定义在块级作用域中可见的变量 45
使用ES2016装饰器进行元编程 46
使用可配置的装饰器 47
使用ES2015编写模块化的代码 48
使用ES2015中的模块语法 49
利用隐式异步行为 50
使用别名 50
导入所有导出的模块 50
默认导出 51
ES2015模块加载器 52
ES2015和ES2016总结 52
发挥静态类型的优势 53
使用显式类型定义 53
理解原生类型 54
理解Object类型 55
定义类 58
使用访问修饰符 59
定义接口 61
使用TypeScript装饰器提升表现力 64
使用类型参数编写泛型代码 64
使用泛型函数 66
多重泛型 66
利用TypeScript的类型推断机制简化代码 67
最常见的类型 67
与上下文有关的类型推断 68
使用外部类型定义 68
使用预定义的外部类型定义 68
自定义外部类型 70
定义ts.d文件 72
本章小结 72
第4章 Angular 2组件和指令入门 74
Angular 2 Hello world! 75
配置开发环境 78
初始化项目仓库 78
Angular 2和TypeScript上手试玩 79
首页代码深度解析 80
Angular 2指令用法 81
ngFor 指令 83
改进了指令语法的语义 83
在模板内部定义变量 85
在模板里面使用语法糖 85
定义Angular 2指令 85
设置指令的输入 87
理解指令的构造函数 87
封装指令的更好方式 88
Angular 2内置指令的用法 89
组件视图封装简介 90
实现组件的控制器 90
处理用户交互 92
指令的输入和输出 93
找到指令的输入和输出 94
定义组件的输入和输出 95
传递输入与使用输出结果 97
事件冒泡 99
重命名指令的输入与输出 100
定义输入输出参数的另一种语法 101
详解Angular 2中的内容投影 102
Angular 2中的内容投影入门 102
投射多块内容 103
组件嵌套 105
ViewChildren和ContentChildren的用法 106
ViewChild与ContentChild 108
挂钩到组件的生命周期上 112
执行的顺序 114
用TemplateRef定义通用视图 115
理解并优化脏值检测机制 118
脏值检测器的执行顺序 118
脏值检测策略 120
利用不可变数据和OnPush策略提升性能 121
在Angular中使用不可变数据结构 122
本章小结 124
第5章 Angular 2中的依赖注入 125
为什么要依赖注入? 125
Angular 2中的依赖注入 126
Angular 2中DI的优点 127
配置注射器 127
使用生成的元数据解析依赖关系 129
初始化注射器 129
前向引用简介 130
配置provider 132
定义实例化服务的工厂 134
子注射器以及可见性 136
构建注射器层级结构 137
配置依赖关系 138
在组件和指令中使用DI 144
元素注射器简介 145
在ES5中使用Angular的DI机制 149
本章小结 152
第6章 Angular 2中的路由和表单 153
开发一个名为“码农仓库”的应用 153
探索Angular 2中的路由 156
定义根组件并启动应用 157
PathLocationStrategy的用法 158
使用@RouteConfig配置路由 158
routerLink 和router-outlet的用法 160
利用AsyncRoute实现懒加载 162
Angular 2中的表单用法 164
开发模板驱动型表单 164
深入理解模板驱动型表单的标签结构 166
使用内置的表单校验器 168
自定义控件的校验器 169
在Angular中使用select输入项 171
NgForm指令的用法 173
Angular 2中的双向数据绑定 176
存储表单数据 178
显示存储的所有开发者列表 180
本章小结 181
第7章 详解管道以及与RESTful服务端之间的通信 183
在Angular 2中开发数据模型驱动型表单 183
使用控件校验器组合 187
探索Angular的HTTP模块 189
使用Angular的HTTP模块 191
定义参数化视图 193
定义嵌套路由 195
使用管道进行数据转换 198
开发无状态管道 199
使用Angular内置的管道 200
开发有状态管道 201
有状态管道的用法 203
Angular中AsyncPipe的用法 204
本章小结 206
第8章 开发体验与服务端渲染 208
在Web Worker中运行应用 208
WebWorker与Angular 2 210
启动基于WebWorker的应用 210
把应用迁移到Web Worker上 212
让应用兼容Web Worker 214
单页应用的加载过程 216
启用了服务端渲染的SPA的加载过程 219
Angular 2中的服务端渲染 220
改善开发体验 221
各种文本编辑器和IDE 221
热重载 222
用angular-cli初始化项目 223
angular-cli的用法 223
Angular 2快速上手项目 224
Angular 2种子项目 224
针对Webpack的Angular 2入门项目 225
本章小结 225
迈向Angular 2的更多相关文章
- angularjs directive and component 指令与组件 ( 1.5.0 以后 )
之前写过一篇了 http://www.cnblogs.com/keatkeat/p/3903673.html 但某些部分写的不太清楚,甚至有点错误,所以今天特地在这里再来谈谈. 这篇主要是说指令的隔离 ...
- ng2学习--pipe使用
We use our custom pipe the same way we use built-in pipes.(自定义Pipe和API里自带的Pipe使用方式一致) We must includ ...
- 迈向angularjs2系列(8):angular cli和angular2种子项目
文章目录 1.angular cli快速搭建项目 2.angular2-seed 3.手动配置 题外话:如何更好的阅读本篇文章 一: angular cli的安装 Angular-cli(命令行界面, ...
- Angular杂谈系列1-如何在Angular2中使用jQuery及其插件
jQuery,让我们对dom的操作更加便捷.由于其易用性和可扩展性,jQuer也迅速风靡全球,各种插件也是目不暇接. 我相信很多人并不能直接远离jQuery去做前端,因为它太好用了,我们以前做的东西大 ...
- Angular企业级开发(5)-项目框架搭建
1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...
- TypeScript: Angular 2 的秘密武器(译)
本文整理自Dan Wahlin在ng-conf上的talk.原视频地址: https://www.youtube.com/watch?v=e3djIqAGqZo 开场白 开场白主要分为三部分: 感谢了 ...
- angular实现统一的消息服务
后台API返回的消息怎么显示更优雅,怎么处理才更简洁?看看这个效果怎么样? 自定义指令和服务实现 自定义指令和服务实现消息自动显示在页面的顶部,3秒之后消失 1. 显示消息 这种显示消息的方式是不是有 ...
- div实现自适应高度的textarea,实现angular双向绑定
相信不少同学模拟过腾讯的QQ做一个聊天应用,至少我是其中一个. 过程中我遇到的一个问题就是QQ输入框,自适应高度,最高高度为3row. 如果你也像我一样打算使用textarea,那么很抱歉,你一开始就 ...
- Angular企业级开发-AngularJS1.x学习路径
博客目录 有链接的表明已经完成了,其他的正在建设中. 1.AngularJS简介 2.搭建Angular开发环境 3.Angular MVC实现 4.[Angular项目目录结构] 5.[SPA介绍] ...
随机推荐
- IDEA + Spring boot 单元测试
1. 创建测试类 打开IDEA,在任意类名,任意接口名上,按ctrl+shift+t选择Create New Test image 然后根据提示操作(默认即可),点击确认,就在项目的/test/jav ...
- linux 老式 PCI 探测
在老的内核版本中, 函数 pci_register_driver, 不是一直被 PCI 驱动使用. 相反, 它 们要么手工浏览系统中的 PCI 设备列表, 要么它们将调用一个能够搜索一个特定 PCI ...
- JQuery仿购物网站放大镜特效所遇问题及思考
JQuery仿购物网站放大镜特效所遇问题及思考 先贴下效果图,然后描述起来也就不会不知道我在说什么了. 我碰到的问题一: 一开始我自己总结了是因为两个小原因导致的①使用了mouseover,mouse ...
- CAS5.3 单点登录/登出/springboot/springmvc
环境: jdk:1.8 cas server:5.3.14 + tomcat 8.5 cas client:3.5.1 客户端1:springmvc 传统web项目(使用web.xml) 客户端2:s ...
- linux查看文件内容跳到文件底部和回到文件顶部的快捷键
有时候需要查看一些日志文件,然后要从底部开始查看的话 可以按 shift+g 即可跳到文件底部 要返回文件顶部的时候 按 gg即可
- python密码输入模块getpass
import getpass pwd = getpass.getpass("请输入密码") print(pwd)
- csredis-in-asp.net core理论实战-主从配置、哨兵模式
csredis GitHub https://github.com/2881099/csredis 看了github上的开源项目,上面真的只是单纯的使用文档,可能对于我这种人(菜鸟)就不太友好, 我知 ...
- centos7搭建hadoop2.10伪分布模式
1.准备一台Vmware虚拟机,添加hdfs用户及用户组,配置网络见 https://www.cnblogs.com/qixing/p/11396835.html 在root用户下 添加hdfs用户, ...
- 假期汇总表handler中涉及的基础知识
1,stringBuffer 的常用方法,append () 方法, public StringBuffer append(boolean b) 追加内容到当前StringBuffer对象的末尾 ,我 ...
- http、https、SSL、TLS的区别
一.HTTP和HTTPS之间的区别 HTTP是一种协议,全称叫作:超文本传输协议(HTTP,HyperText Transfer Protocol),是互联网上应用最为广泛的一种网络协议.所有的WWW ...