|
|
其实TypeScript并不是一门新的语言,它是 JavaScript 的超集。它最大的亮点,就是其无可替代的强类型系统,这也是它为什么叫 TypeScript 的原因。之所以说它的类型系统无可替代,是因为TypeScript 填充了 JavaScript 作为一门动态弱类型脚本语言的缺点,多了静态类型检查, 能够对代码中的错误及时反馈,而又保留了JavaScript 的灵活,维护大型工程项目更加轻松。
( L$ u, P; V4 R. u. O 现在最流行的三大主流前端框架,React 和 Angular 使用 TypeScript 编写,而 Vue3.0 则会使用TypeScript 重写;而 NodeJS 的模块很多都添加了类型声明,所以使用 TypeScript 可以很好地开发前后端和其他场景的项目。
- J& Q5 ^8 K3 h" f2 d课程目录:
# P6 \, Q# z% C9 E# T2 G# C第一章 入门准备0 z2 w' x N- R5 d& J* f
01 开篇词:Hello~TypeScript$ ]9 H4 w K0 e3 I) K& V
02 TypeScript应该怎么学
) u# p& `$ V5 r# d! l# O5 j03 VSCode揭秘和搭建开发环境
& G- Y) d* m' M' s第二章 基础部分
$ U/ ?0 ^0 v) R; \6 k. m' h2 v04 八个JS中你见过的类型8 J6 p/ S0 w* s+ O
05 TS中补充的六个类型
! s& ^0 }% O- x) |1 [( H06 Symbol-ES6新基础类型5 e- [' y! |: R! ^( w+ `% o, @
07 深入学习枚举7 o( X; u, \: i
08 使用类型断言达到预期* b# j( |8 J; ?, S1 Y4 h$ p
09 使用接口定义几乎任意结构2 i& S6 L( A1 U7 U& I+ t+ O+ A
10 接口的高阶用法9 V3 d3 l9 o1 K- [5 Z, l
11 为函数和函数参数定义类型8 Y% @8 g- e: @- Q, U+ N6 W$ u
12 使用泛型拯救你的any+ |. d O9 ?: K+ Z# G
13 TS中的类,小心它与ES标准的差异
L) |6 O8 f" ^5 b" h8 J: G第三章 进阶部分" a" w" G' J4 M- Y6 ]/ W& o
14 类型推论,看TS有多懂你$ [( g2 p9 k9 B6 I0 z: V- u
15 类型兼容性,开放心态满足灵活的JS; D% T5 R6 D" _$ |4 O
16 使用类型保护让TS更聪明0 q# m |5 k. n9 |! v$ d
17 使用显式复制断言给TS一个你一定会赋值的承诺
- _8 ]1 L* q* R$ @+ r18 类型别名和字面量类型—单调的类型, |1 N9 E, ?( ?, |. n$ c2 t( a$ ?8 q$ Z9 [
19 使用可辨识联合并保证每个case都被处理
. _7 p( u5 ]# N, f( [! w5 g20 this,类型?
+ i1 h9 C" l8 R) X% b& s21 索引类型:获取索引类型和索引值类型0 a: r9 S# u* l4 q1 v- u
22 使用映射类型得到新的类型
/ N2 c4 l& o+ D, h0 Z2 S* \& ]23 前面跳过的unkown类型详解
" ^) A0 V+ s7 a( u24 条件类型,它不是三元操作符的写法吗?
$ h y9 F: \9 c0 A7 E J# E( C$ C. }25 入手装饰器,给凡人添加超能力9 ^( c- B5 Z3 Q3 ]% F- U# g6 e
第四章 知识整合 j0 K9 Y2 [* m
26 使用模块封装代码
2 O s) d S q* x) q1 C27 使用命名空间封装代码. V- g: ?, s5 E b, r1 N$ H
28 对声明合并的爱与恨
6 K6 C2 i0 S; L, i) `5 A1 a29 混入,兼顾值和类型的合并操作
" y# V5 x2 u$ [/ c* ?$ |30 Promise及其语法糖async和await8 z; m6 P0 K# l2 I" r, D
第五章 项目配置及书写声明文件
$ L7 r# T+ X% L+ K31 逐条来看tsconfig.json配置# r/ |/ w3 n! w N
32 书写声明文件之磨刀:识别库类型9 v; ?# }# G( ^* o- }
33 书写声明文件之砍柴:为不同类型库书写声明文件- \) Y7 j& x3 j1 _$ J* k6 S
第六章 项目实战-TS+Vue实现一个简单后台
9 Z; a$ s9 `! ~34 搭建基础项目) i. h: o7 D( D9 T4 \ ?
35 封装接口请求& F* ^( f7 S ^% R* t
36 实现登录页并用Mock响应请求2 }0 t$ {& q/ c5 j, s! {0 Q
37 搭建后台界面布局和结合Vuex实现完整登录流程
4 s2 o7 }0 l* s5 W g3 Y2 m( {38 使用TypeScript开发Vue组件和使用Vue组件4 `$ v6 e1 w( `' J* k
第七章 写在最后
+ h9 |6 y! [# H" H39 结束语6 i; q3 u: U+ r$ \
2 c! \1 e) @* e0 j
1 p6 B) ^1 e( c& F0 U" z
9 ]! P/ H$ e' c |
|