# Angular 2 技能图谱

## 模块

### 自定义模块

- 根模块

- 特性模块

- 共享模块

- 核心模块

### 内置模块

- ApplicationModule 模块

- CommonModule 模块

- BrowserModule 模块

- FormsModule 模块

- ReactiveFormsModule 模块

- RouterModule 模块

- HttpModule 模块

### 元数据

- providers

- declarations

- imports

- exports

- bootstrap

- id

- schemas

- entryComponents

## 指令

### 组件

### 结构指令

- 改变 DOM 树的结构,如 NgIf

### 属性指令

- 改变元素的外观和行为,如 NgStyle

### 生命周期钩子

- OnInit

- OnChanges

- DoCheck

- OnDestroy

### 内置指令

- 通用指令

* NgClass

* NgStyle

* NgIf

* NgSwitch

* NgFor

* NgTemplateOutLet

* NgPlural

- 表单指令

* FormsModule 模块

+ NgForm

+ NgModelGroup

+ NgModel

+ InternalFormsSharedModule 模块

* ReactiveFormsModule 模块

+ FormControlDirective

+ FormGroupDirective

+ FormControlName

+ FormGroupName

+ FormArrayName

+ InternalFormsSharedModule 模块

* InternalFormsSharedModule 模块

+ 表单元素访问器指令

+ 表单选择框选项指令

+ 表单验证指令

+ 控件状态指令

- 路由指令

* RouterLink

+ RouterLinkWithHref(a[routerLink])

+ RouterLink(:not(a)[routerLink])

* RouterLinkActive

* RouterOutlet

### 自定义指令

## 组件

### 元数据

- selector

- moduleId

- inputs

- outputs

- host

- exportAs

- providers

- viewProviders

- changeDetection

- queries

- entryComponents

- templateUrl

- template

- encapsulation

- styles

- styleUrls

- animations

- interpolation

### 生命周期钩子

- OnChanges

- OnInit

- DoCheck

- AfterContentInit

- AfterContentChecked

- AfterViewInit

- AfterViewChecked

- OnDestroy

### 模板

## 模板

### 表达式操作符

- 管道(|)

* 内置管道

* 自定义管道

* 纯管道

* 非纯管道

- 安全导航(?.)

### 数据绑定

- 属性绑定 - []

* 插值 - {{}}

* Property 绑定

* Attribute、 class 与 style 绑定

- 事件绑定 - ()

- 双向绑定 - [()]

### 表单

- 模板局部变量(# 或 ref-)

- 表单校验

* 内置校验器

* 自定义检验器

- 表单状态

- 表单指令

### 内置元素标签

- \<ng-container>

- \<ng-content>

## 路由

### 路由指令

### 路由策略

- PathLocationStrategy

- HashLocationStrategy

- PreloadingStrategy

* PreloadAllModules

* NoPreloading(默认)

* 自定义预加载策略

### 路由拦截

- CanActivate(激活拦截)

- CanActivateChild(激活子路由配置项)

- CanDeactivate(反激活拦截)

- CanLoad(模块加载拦截)

- Resolve(数据预加载拦截)

### 路由跳转

- 指令跳转

* RouterLink

- 代码跳转

* navigateByUrl()

* navigate()

### 路由状态

- ActivatedRouteSnapshot

- RouterStateSnapshot

## 依赖注入

### 注入器(树)

### Provider

- 类 Provider(useClass)

- 值 Provider(useValue)

- 别名 Provider (useExisting)

- 工厂 Provider(useFactory)

### forwardRef()

### 可选依赖 - @Optional

## 服务

### 内置服务

- JsonpModule 模块

* Jsonp

* BrowserJsonp

* RequestOptions

* ResponseOptions

* JSONPBackend

- HttpModule 模块

* HTTP

* BrowserXhr

* XHRBackend

* XSRFStrategy

* RequestOptions

* ResponseOptions

### 自定义服务

## RxJS

### Observable

### Observer

### Subscription

### Subject

### operators

- 创建操作符

- 转化操作符

- 过滤操作符

- 组合操作符

- 错误处理操作符

- 工具操作符

- 条件操作符

### Scheduler

## 装饰器

### 类装饰器

- @Component

- @Directive

- @Pipe

- @Injectable

- @NgModule

### 属性装饰器

- @Input

- @Output

- @HostBinding

- @HostListener

- @ContentChild

- @ContentChildren

- @ViewChild

- @ViewChildren

### 参数装饰器

- @Inject

- @Optional

- @Self

- @SkipSelf

- @Host

- @Attribute

## 动画

- AnimationKeyframe

- AnimationPlayer

- AnimationSequencePlayer

- AnimationGroupPlayer

- AnimationQueue

- AnimationTransition

- AnimationTransitionEvent

## 变化检测

### Zone.js

- ngZone

* onUnstable

* onMicrotaskEmpty

* onStable

* onError

### 异步操作

- 用户事件:Click/Change...

- 通信:XHR/WebSocket

- 定时任务:setTimeout/requestAnimationFrame

### ChangeDetectorRef

## 测试

### 单元测试

- Jasmine 测试框架

- Karma 管理工具

### 端到端测试

- Protractor

- Benchpress

###  内置工具集

- TestBed

- inject

- ComponentFixture

- fakeAsync

- flushMicrotasks

- tick

- discardPeriodicTasks

## 升级

- UpgradeAdapter

- UpgradeAdapterRef

## 模板编译器

- 动态 - JIT

- 静态 - AoT

+ ngc

## 调试

- Augury

- 断点调试

## 质量检查工具

- TSLint

- Codelyzer

## 构建工具

- webpack

- Gulp

- RollUp

- System.js

## 编码工具

- VS Code

- WebStorm

- Atom

- Sublime Text

- Vim

## 开发语言

- TypeScript

- ES6 / ES5

- Dart

## 周边生态圈

- Angular Material 2

- Universal

- Angular-CLI

- Ionic 2

- NativeScript

- Angular Mobile Toolkit

- AngularFire 2

- Angular Electron

Angular 2 技能图谱skill-map的更多相关文章

  1. Java软件工程师技能图谱

    原文链接:Java软件工程师技能图谱 最近在考虑"拥有怎样的技能才能算一名合格的java软件工程师呢?"这个问题.碰巧在github发现一个很棒的开源项目--程序员技能图谱.@Zh ...

  2. fir.im Weekly - 人人都需要的 IT 技能图谱

    AlphaGo 与李世石的人机世纪大战落下帷幕,不禁让人思考<失控> 中说道的 "机器正在生物化,而生物正在工程化 ".作为人类,在未来能否保全最后的智力骄傲成为一个疑 ...

  3. DBA的技能图谱

    最近发现公布的技术岗位的技能图谱中没有DBA的,比较心塞,于是根据自己的工作经验写了一个,写的过程中发现,还的不断的完善,但是先放出来,欢迎大家提建议.

  4. [转]StuQ 技能图谱(全套13张)

    程序开发语言综述.jpg 前端工程师必备技能.jpg 大数据工程师必备技能.jpg   安全工程师必备技能.jpg 嵌入式开发必备技能.jpg iOS开发工程师必备技能.jpg   移动无线测试工程师 ...

  5. PHP 工程师技能图谱

    # PHP 工程师技能图谱## 基础知识 - HTTP - HEADER - REQUEST - RESPONSE - GET/POST/PUT/DELETE/PATCH/CONNECT/OPTION ...

  6. Node.js 开发技能图谱

    # Node.js 开发技能图谱 ## Node.js 语言环境搭建 - Node.js 安装(3m大法:nvm.npm.nrm)- Node.js 命令- Node.js开发工具(推荐vscode) ...

  7. Golang 开发技能图谱

    # Golang 开发技能图谱 ## Go 语言环境搭建- Go 安装- GOPATH 与工作空间- Go 命令- Go开发工具 ## GO 语言编程基础- 关键词和语法(Language Synta ...

  8. Ruby 技能图谱

    # Ruby 技能图谱 说明: 本图谱只捡重点的列举,并非包含全部.文中所列举或没有列举的资源信息都可以在[awesome-ruby](https://github.com/markets/aweso ...

  9. Java Software Engineer Skill Map

    # Java Software Engineer Skill Map## Basic### Core Java- Java The Complete Reference Ninth Edition.p ...

随机推荐

  1. element table 通过selection-change选中的索引删除

    <el-table :row-class-name="tableRowClassName" @selection-change="handleSelectionCh ...

  2. Linux 下查看用户组信息

    1.id 通过id 可以直接查看到当前登陆用户的uid, group id , group name 等等.. 2.groups

  3. thinkphp 相关

    路径重写,既模式2 需要.htaccess文件放到index.php同级, http.config文件 中当前项目目录配置  AllowOverride All LoadModule rewrite_ ...

  4. Oralce-PL/SQL编程-游标

    PL/SQL(Procedural Language/SQL)是Oracle在数据库中引入的一种过程化编程语言. PL/SQL块结构 声明部分 执行部分(必须的) 异常处理部分 [declare] - ...

  5. hdu3518 Boring counting(后缀数组)

    Boring counting 题目传送门 解题思路 后缀数组.枚举每种长度,对于每个字符串,记录其最大起始位置和最小起始位置,比较是否重合. 代码如下 #include <bits/stdc+ ...

  6. APP测试功能点

    1.使用APP时手机耗电情况 2.APP占用手机内存 3.APP在不同网络下的使用情况(WiFi/4G/3G/2G) 4.APP安装包大小 5.APP流量消耗 6.APP支持系统版本(android, ...

  7. 深入理解javascript原型和闭包(4)——隐式原型 (转载)

    深入理解javascript原型和闭包(4)——隐式原型   注意:本文不是javascript基础教程,如果你没有接触过原型的基本知识,应该先去了解一下,推荐看<javascript高级程序设 ...

  8. if语句基本结构以及基础案例演示

    1.结构 if(比较表达式1) { 语句体1; }else if(比较表达式2) { 语句体2; }else if(比较表达式3) { 语句体3; } ... else { 语句体n+1; } 2.执 ...

  9. Springboot集成Mybatis+PageHelper

    1.Springboot项目引入mysql和mybatis的依赖: <dependency> <groupId>org.mybatis.spring.boot</grou ...

  10. MYSQL 查询脚本优化

    业务需要,优化一段多表查询脚本. 总结下来,采取以下步骤. 分析语句 分析语句,了解逻辑,是否可以先优化逻辑. 查询语句的查询范围,是否是全表查询,如果是,尽量优化为按索引查询. 查看语句数量,是否有 ...