|
|
其实TypeScript并不是一门新的语言,它是 JavaScript 的超集。它最大的亮点,就是其无可替代的强类型系统,这也是它为什么叫 TypeScript 的原因。之所以说它的类型系统无可替代,是因为TypeScript 填充了 JavaScript 作为一门动态弱类型脚本语言的缺点,多了静态类型检查, 能够对代码中的错误及时反馈,而又保留了JavaScript 的灵活,维护大型工程项目更加轻松。4 [1 c+ M; q% p3 J
现在最流行的三大主流前端框架,React 和 Angular 使用 TypeScript 编写,而 Vue3.0 则会使用TypeScript 重写;而 NodeJS 的模块很多都添加了类型声明,所以使用 TypeScript 可以很好地开发前后端和其他场景的项目。0 |( @+ b3 j. J' U/ L! x4 P l
课程目录:, A( a0 n6 h- }& y: Z* c
第一章 入门准备) N+ a' Q) s! k6 W0 E
01 开篇词:Hello~TypeScript" Y- O- @# n' \ Y: @( O8 C
02 TypeScript应该怎么学
% g. v5 L. l2 n$ g [ w8 ^03 VSCode揭秘和搭建开发环境
: |3 ?% R) |* k r, `9 r: D第二章 基础部分3 g d8 q9 m! l2 @* U
04 八个JS中你见过的类型2 X. r) o; K8 H0 U, \
05 TS中补充的六个类型
* {9 v' d& K/ ?06 Symbol-ES6新基础类型
. W( p+ P, F" q+ ]# ?, ^1 P1 T07 深入学习枚举. }. ^ f6 q4 X* O1 t0 a' P& h
08 使用类型断言达到预期, U& R/ q( m4 S9 p6 Y3 q$ }' R
09 使用接口定义几乎任意结构$ i" M, T$ z& k) ?
10 接口的高阶用法* [7 Z& L& _# {% e0 p/ v
11 为函数和函数参数定义类型
/ o( J6 Q8 D" T* Y \( K9 Y12 使用泛型拯救你的any" o( F. C. \: W- A& C2 o7 P# ~) b1 G
13 TS中的类,小心它与ES标准的差异
! r+ H' m( ]! b8 N2 m第三章 进阶部分
0 O O% N" i5 m14 类型推论,看TS有多懂你% h6 M6 }, k1 o( d/ {- h4 h
15 类型兼容性,开放心态满足灵活的JS) j7 {, `' u; ~/ @3 F. s
16 使用类型保护让TS更聪明
( r1 P; f' f- z+ H. s" e# A* K17 使用显式复制断言给TS一个你一定会赋值的承诺- S% a0 T" H) m: c5 i
18 类型别名和字面量类型—单调的类型2 c; _. W& ]4 a4 ?( y% l2 F2 d8 q
19 使用可辨识联合并保证每个case都被处理7 Q4 V0 L. J4 G) b8 ]
20 this,类型?
+ P, f) m# H6 r* M% H2 D% S21 索引类型:获取索引类型和索引值类型0 l" A8 g% M( C& ^4 k6 v4 [
22 使用映射类型得到新的类型
1 Y$ T) Y5 S: H5 n7 t23 前面跳过的unkown类型详解7 W0 G% z+ M; D: P) B" e! ^) D
24 条件类型,它不是三元操作符的写法吗?) Y* \5 Z; N- H9 D
25 入手装饰器,给凡人添加超能力7 U( p/ p) d. A3 M8 f) o; N& h! ^2 R
第四章 知识整合
7 i4 x; l3 z9 ]& ]8 P0 N: N0 L26 使用模块封装代码
7 Y0 b% e9 J: N( ?1 X5 H' Z' B27 使用命名空间封装代码
9 Q, R; S/ q5 r28 对声明合并的爱与恨' T+ V& ~& P" s. E
29 混入,兼顾值和类型的合并操作
( @; r6 G$ E, g* l+ }* g/ U30 Promise及其语法糖async和await. @& T9 x: A, b& _* w
第五章 项目配置及书写声明文件
" G2 i% Q: J4 q& Z31 逐条来看tsconfig.json配置
# X: Z/ R; P3 c' r: |8 b9 {# }32 书写声明文件之磨刀:识别库类型
& |. j; U" ]( M# C33 书写声明文件之砍柴:为不同类型库书写声明文件5 s$ \* m$ g3 r& u0 r* ]: p
第六章 项目实战-TS+Vue实现一个简单后台# X+ s4 U+ |, Y9 A% o# B9 T( |
34 搭建基础项目
+ K9 u. ?, g$ U. n, W. B5 b35 封装接口请求6 ^+ L2 Z1 Y+ U8 y6 n- S
36 实现登录页并用Mock响应请求
* _: u: O/ l7 V! |6 x% _7 P37 搭建后台界面布局和结合Vuex实现完整登录流程
4 x' [& p' Y# @0 t38 使用TypeScript开发Vue组件和使用Vue组件- e) f, ^( a) d8 W& r Q9 t3 K) C
第七章 写在最后
& [9 y! w' |* c* _8 t. }39 结束语
: d6 i0 y. c2 ]( y8 n
! {# `4 x8 ]' ~& t
0 S$ E, I% @9 j4 N) o. z1 \9 J' I
3 @. C& |% @6 h, ?) L9 c6 g
|
|