# 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. 4 November in ss

    Contest A. 输油管道问题 某石油公司计划建造一条由东向西的主输油管道.该管道要穿过一个有 \(n\) 口油井的油田.从每口油井都要有一条输油管道沿最短路经 (或南或北) 与主管道相连.如果给 ...

  2. python中*args和**kargs得用法总结

    前言: 一个很简单的函数说起: def Jiafa(x, y): z = x + y return z print(Jiafa(1,2)) 这个很简单,一看就知道输出等于3. 那下一个问题是,如果我要 ...

  3. 记录规则(recording rules)与告警规则(alerting rule)

    记录规则(recording rules) 配置规则 Prometheus支持两种类型的规则,可以对其进行配置,然后定期进行评估:记录规则和警报规则.要在Prometheus中包含规则,请创建一个包含 ...

  4. C语言博客作业04

    问题|答案 -|:-:|-: 这个作业属于哪个课程|c语言程序设计I 这个作业的要求在哪里|https://edu.cnblogs.com/campus/zswxy/CST2019-4/homewor ...

  5. 蛋糕仙人的javascript笔记

    蛋糕仙人的javascript笔记:https://www.w3cschool.cn/kesyi/kesyi-nqej24rv.html

  6. C++中的多重继承(二)

    1,本文分析另一个多重继承问题及其工程中的解决方案,单继承加多接口实现的开发方式: 2,多重继承的问题三: 1,多重继承可能产生多个虚函数表: 1,实际工程中可能造成不可思议的问题,并且这些问题很难以 ...

  7. [fw]awk求和

    suse11:~ # cat tmp.lst 4096 4 4096 4 4096 2 4096 4 8192 1 8192 4 8192 4 8192 4 8192 4 8192 4 8192 4 ...

  8. vue中关于checkbox数据绑定v-model

    vue.js为开发者提供了很多便利的指令,其中v-model用于表单的数据绑定很常见, 下面是最常见的例子: <div id='myApp'>     <input type=&qu ...

  9. Java技术中的三大特性

    1.虚拟机                                Java虚拟机JVM(Java Virtual Machine)在Java编程里面具有非常重要的地位,约相当于前面学到的Jav ...

  10. Java中的HashMap的2种遍历方式比较

    首先我们准备数据,准备一个map Map<String, String> map = new HashMap<String, String>(); for (int i = 0 ...