|
|
其实TypeScript并不是一门新的语言,它是 JavaScript 的超集。它最大的亮点,就是其无可替代的强类型系统,这也是它为什么叫 TypeScript 的原因。之所以说它的类型系统无可替代,是因为TypeScript 填充了 JavaScript 作为一门动态弱类型脚本语言的缺点,多了静态类型检查, 能够对代码中的错误及时反馈,而又保留了JavaScript 的灵活,维护大型工程项目更加轻松。
" @5 A0 `( t8 v G, B 现在最流行的三大主流前端框架,React 和 Angular 使用 TypeScript 编写,而 Vue3.0 则会使用TypeScript 重写;而 NodeJS 的模块很多都添加了类型声明,所以使用 TypeScript 可以很好地开发前后端和其他场景的项目。
' J: D1 }( Z/ V$ S" W' ]- @5 `0 N课程目录:/ y9 w4 Y1 F$ ^0 t! k7 \- V1 `
第一章 入门准备+ L4 N2 b( q) L+ U+ J$ U
01 开篇词:Hello~TypeScript
% P8 j7 n4 {' E: a6 A02 TypeScript应该怎么学
+ h0 F# j! a2 @0 T: [* ~: E" a8 R03 VSCode揭秘和搭建开发环境" u" v, ^3 ~; L1 X6 ?1 E
第二章 基础部分
2 t7 J, C$ Y6 _7 H* n! ]04 八个JS中你见过的类型0 t7 N0 G# P4 r$ p5 a* ~
05 TS中补充的六个类型
/ H7 n+ X/ O1 m; Y, v06 Symbol-ES6新基础类型
4 \: e+ x7 l N2 S7 |07 深入学习枚举
0 E/ T3 j7 D2 P0 U. a+ `4 o3 E08 使用类型断言达到预期9 X' t- O$ a$ S4 c6 I3 K7 q Q* ^
09 使用接口定义几乎任意结构# i& X1 G, D4 I* t9 q6 U
10 接口的高阶用法" F- v# r+ u5 S" r0 z
11 为函数和函数参数定义类型
0 \" R8 {# t# }7 W+ N12 使用泛型拯救你的any, t% e# r( G( K6 d) X" m
13 TS中的类,小心它与ES标准的差异, Q( C# {: X0 P4 X+ y
第三章 进阶部分: `. N. j1 z3 J: O
14 类型推论,看TS有多懂你
) [" Q0 n- J7 I15 类型兼容性,开放心态满足灵活的JS
, g7 u- t. Q0 L/ e& N# R16 使用类型保护让TS更聪明, x; j7 P( U5 Z, ~& o W
17 使用显式复制断言给TS一个你一定会赋值的承诺
) F: ^& v6 d. l9 q0 y18 类型别名和字面量类型—单调的类型
7 B! N. I% o) @8 B6 [2 \19 使用可辨识联合并保证每个case都被处理5 [3 d- g }$ _8 O' u" ~. w9 s
20 this,类型?; `( `5 h7 k2 Q0 b0 N
21 索引类型:获取索引类型和索引值类型5 y) e" C. E7 k7 ?9 b! E2 f
22 使用映射类型得到新的类型
. F% g. L. D `6 X( n+ u! ~; D1 X2 y% Q23 前面跳过的unkown类型详解
9 M2 j: U: n/ z24 条件类型,它不是三元操作符的写法吗?
6 [+ t* y1 O. c# D) ?) l25 入手装饰器,给凡人添加超能力- v: `- A: q: N
第四章 知识整合3 M& s o, R, e; ~2 T: }' U3 ]
26 使用模块封装代码. j9 P/ t$ j5 \# p
27 使用命名空间封装代码
7 w1 Q* X) X# S: f, e( A& q% v28 对声明合并的爱与恨
: \* j# X- R' j* v29 混入,兼顾值和类型的合并操作" X; R, ^( @ K2 q( j" }7 X; |
30 Promise及其语法糖async和await# K/ u! o) S1 L. K; T
第五章 项目配置及书写声明文件: U: [% F9 x% \* L
31 逐条来看tsconfig.json配置; A3 w3 F+ v! h- Z8 ?5 D1 `
32 书写声明文件之磨刀:识别库类型- E8 u% R( } C7 U
33 书写声明文件之砍柴:为不同类型库书写声明文件
) v3 l3 H* @. t6 J5 c2 E- v第六章 项目实战-TS+Vue实现一个简单后台
6 A0 M* D1 n" y% q! z! G" F34 搭建基础项目
' a9 h1 U K; w V% e* M# K35 封装接口请求* e J+ ?. K8 c/ p S" A" H
36 实现登录页并用Mock响应请求+ d! w, y/ q' `- @6 p" v2 I6 m
37 搭建后台界面布局和结合Vuex实现完整登录流程4 E l3 {7 f. b3 _
38 使用TypeScript开发Vue组件和使用Vue组件
; `! U/ X S4 Q0 \0 u第七章 写在最后# y/ k) U" J5 |! w+ ^6 A) |# J
39 结束语# V' M5 W2 S5 o' C) D+ ]
( b; V- o& n2 y0 d' j
$ |2 I7 J6 ~- y! w' }
9 c! p3 O- ?& f% D2 u/ ~. a |
|