React+TypeScript高仿AntDesign开发企业级UI组件库

  [复制链接]
查看1628 | 回复14 | 2021-11-22 08:23:12 | 显示全部楼层 |阅读模式
16491213136239.png
8 B* ?- ]8 a6 \& J3 S7 Q
: D6 p2 U5 k$ M9 _9 n; D( R〖课程介绍〗6 I  d- }9 O# ], |% z& Y1 n; }
从零到一高仿 AntD 使用 Typescript 和 React 开发组件库,在这其中穿插了一系列的知识点: 大型项目的样式组织,react 组件测试,react 动画实现。开发完毕还实现了模块化打包,代码发布再到 CI/CD 的全流程。
9 u1 \* W' U" a& ^0 X" ?* W8 t/ U1 ]. z3 l
〖课程目录〗
. `- X7 c( B2 H1 m第1章 课程导学(此章节必看) 试看' U/ k4 Q6 V: k6 ?  m. H8 e
1-1 导学(不看错过1个亿) (16:40)试看/ L: k: ^4 e3 R. {3 j5 {( W7 |* B: |( O
1-2 代码库使用注意事项(必看) (04:33)
4 w0 Q* Q3 Q, [) S/ I* n& y9 `: n8 F3 z, m4 `. z3 M- @' I' G$ {
第2章 欢迎来到类型的世界 - Typescript 试看
- V. f! n# U' ]* R2-1 什么是 Typescript (05:46)试看
; I" }0 ]$ k7 f5 `9 T. b  b2-2 为什么要使用 Typescript (04:56)+ y* Y. Y  ?/ w$ h- d8 l
2-3 安装和初试 Typescript (07:06)9 s& O. A! X, g, \. Z
2-4 基础类型 (05:54)
; O) O9 \9 M! g. P' H% l, K) z2-5 any 类型和联合类型 (04:25)
6 \0 U$ d  d$ c; ~6 J2-6 Array 和 Tuple (06:05)
& i0 E' A. F0 V- @3 z2-7 interface 初探 (06:32)0 z- h; L1 |7 a/ c$ D
2-8 函数和类型推断 (08:06)3 W8 D7 O, g2 A% S) b( [
2-9 类(Class)第一部分 (09:37)
4 X, c3 M7 v1 d) p2 G; h8 h4 o2-10 类(Class)第二部分 (06:35)
3 b+ S9 s* v: A1 Z, K2-11 类和接口 (07:07)$ T# Y' j/ s* M% v: L  s  P
2-12 枚举(Enum) (07:08)5 D/ K+ N" `+ W# y) _
2-13 泛型(Generics) 第一部分 (07:30)
+ ?3 \2 @7 L- w; ]2-14 泛型(Generics) 第二部分 - 约束泛型 (06:23)+ Q: c* a- ?; g3 e
2-15 泛型(Generics) 第三部分 - 类和接口 (12:37)9 b/ h* Y1 }- ?. v8 C0 I
2-16 类型别名和类型断言 (08:57)
* e* N3 x# f. ?8 K$ u! ^- g2-17 声明文件 (06:09)1 S7 |$ ~5 S: q2 W
3 v) T4 g3 T' A0 y& t) N
第3章 神奇的 React 配合 typescript,完美输出
# H  p! g7 L* O$ ]3-1 React简介和基础知识回顾 (14:39)
$ v& J- @3 c( k  _8 @4 r3-2 配置 react 开发环境 (08:50)6 V7 d; z* K1 h
3-3 第一个组件 - ts为组件助力 (06:26)
9 n+ d/ W9 j: W" g" }3-4 什么是 和 为什么要使用 React Hook (07:25)+ ]' A' a$ W2 {& m8 I: \1 |
3-5 在函数组件使用 state - useState Hook (09:10)$ A2 _3 z7 I8 m: w- Y$ i+ N6 O
3-6 useEffect 第一部分 - 初出茅庐 (05:31)6 K9 ^. H. H$ c
3-7 useEffect 第二部分 - 有始有终 (08:18)% r- L  R! ^$ ^) ~- G8 _" Z& L9 |
3-8 useEffect 第三部分 - 控制运行 (06:52)
4 K: U8 Z. s* A$ V: t3-9 自定义 Hook - 重构 MouseTracker (06:48)( |0 Y1 o' o( E7 C- W, U! c% q
3-10 自定义 Hook 第二部分 - HOC的劣势 (08:10)
; Z# S: j3 m& t; D3-11 自定义 hook 第三部分 - 正确的方式完成 URLLoader (07:39)
. b$ ]2 e1 t' k% @, e3-12 useRef - state遇到的难题 (05:08)0 r6 U4 l( N. \' L2 G) t3 ?
3-13 useRef - 多次渲染之间的纽带 (07:30). ^, b" M3 A4 j. K; }$ J' U
3-14 useContext - 解决多层传递属性的灵丹妙药 (10:27); L/ T1 _+ T  V
3-15 hook 规则和其他 hook (03:52)- x& z1 M4 s# H/ x: g
+ C$ s: ^; n4 G
第4章 组件库起航 - 你真的能写的好看起来简单的 Button 组件吗? 试看# Q' X8 _8 j5 H( R
4-1 组件库开始起航 - 需求分析 (05:28)6 `7 l% [; n- o
4-2 文件结构和代码规范 (09:17)& O5 Y' v" K  I; b" Y" F. F/ u
4-3 样式解决方案分析 (07:37)# }& s8 z' q. k2 R6 a% L
4-4 做一次设计师 - 添加自己的色彩体系 (07:02): x) N2 }0 W! u, I) ^9 D4 v) a
4-5 更多样式变量 - 添加字体变量解决方案 (07:10)( F. w4 J5 `6 I& O% S
4-6 初次亮相 - 添加 normalize.css (09:06), L; |. F' h% Y2 S, v! P
4-7 Button 组件需求分析 (04:58)
; O" A0 h( p6 h4-8 小试牛刀 - Button 组件编码 第一部分 (14:18)
. j; @' h) F4 Z4 x) F* r0 k4-9 添加 Button 基本样式 (10:07)+ w( W9 K$ e: L  E
4-10 升级 Button 组件样式 (12:32)
  {% w! Y. X, y( n1 s. o- q4-11 精益求精 - Buton 组件编码第二部分 (08:01)试看
. p8 a7 _' h5 J/ Z) w, M0 b4-12 完成 Alert 组件  ~& N- o( W; ]2 ?( H

. u' }1 o; C. E6 r第5章 组件测试
7 V7 b7 w# r; i, V: {5-1 为什么要有测试 (07:26)) Z" ^( f- n( N) E) N' z5 Q
5-2 通用测试框架 Jest 出场 (09:36)- w8 r, ~. F  O4 w; \
5-3 React 测试工具 - react-testing-library (09:17)
- W% j3 V- Q, M3 u5-4 添加Button 测试代码 第一部分 (10:33)
2 {0 }6 S" [9 o5-5 添加Button 测试代码 第二部分 (10:49)
: [: f3 B; E2 z& m# P5-6 Alert 组件添加测试用例7 `5 T- P! H& {. o
: ~5 }: ^, J3 f" t( ^: v9 {
第6章 更上一层楼 - 完成 Menu 组件
. ]5 n, T- L8 m6-1 Menu 组件需求分析 (07:17)
  v- P4 M' }5 ~: ^4 n8 E# a6-2 基础架构 - Menu组件编码第一部分 (10:35)+ q" r1 Y# K# ~1 O! E9 V4 p
6-3 需求升级 - Menu 组件编码第二部分 (11:09)+ a& @3 i% c5 ^# z, e% I
6-4 添加 Menu 样式 (10:21)
* |# A1 L2 H/ z- \3 |: U6-5 测试驱动 - Menu 测试添加 (17:32)' l: c* C! H" _+ e2 A
6-6 日趋完美 - Menu 组件编码第三部分 (09:15)
& a0 I$ `: Z* ?) H% n6-7 功能继续升级 - SubMenu 下拉菜单编码第一部分 (10:39); j( h9 G* e" w6 n6 Q
6-8 添加交互 - SubMenu下拉菜单编码第二部分 (09:29)
/ @/ `7 {; r- D  o# V8 }: k- h" R6-9 大功告成 - SubMenu 下拉菜单编码第三部分 (10:18)
3 _- y$ W+ H6 }6 q. i+ O; q6-10 完美组件 - SubMenu 组件添加测试 (13:51)
: n" R" g+ o+ j' N$ W6-11 Tabs 组件
: |# L1 S' b: F! d$ X. e- T2 R
, }1 x- Z7 z# M- a& X第7章 他山之石 - Icon 组件 和 Transition 组件
7 a5 b" U. }7 {, t% Q0 d! L  U) M7-1 图标解决方案简介 (07:41)
: r& [! ?8 g- f! b7-2 他山之石 - Icon组件编码第一部分 (10:12)% ~* W$ ^. N5 E# _( U: J
7-3 Icon 组件样式添加 (06:00)
" b& Q, v8 Y: a4 P2 w. y8 L) M7-4 让图标动起来 - 动画效果第一种实现方法 (08:19)
) o) \, t( X9 L1 }2 t! C* {7-5 React Transition Group 简介 (07:59)( y9 w2 X& M+ ]/ [7 T; D
7-6 React Transition Group 实践 - 动画效果第二种实现方式 (06:52)9 P2 b8 `( e4 P- c( c
7-7 尽善尽美 - React Transition Group 添加菜单消失的动画 (06:12)
+ o7 `4 E! l* C# d% Q& L$ P: h* x$ n7-8 拿来主义 - 自定义 Transition 组件编码第一部分 (10:42)9 X+ ~' M+ }8 j5 h/ h/ n* D: v
7-9 拿来主义 - 自定义 Transition 组件编码第二部分 (07:16)( W& ~4 e/ w& ~. k' y5 m+ N$ w
7-10 完成的 Icon 和 Transition 组件. n+ Y6 D7 @; }# ]7 B% ~  w

- z/ N8 y4 U+ ^7 N第8章 Storybook - 本地调试组件和生成文档页面的利器( f- ^% B* m' [( N/ ~0 g
8-1 什么是 Storybook (05:35)6 `3 r2 S# e! E; b
8-2 安装 Stroybook (05:55)2 `% L1 Y- D4 F: Q1 j
8-3 Storybook 支持 Typescript (07:23)
% Q- y0 t6 v0 P3 E8-4 展示秀- 为 Button 添加 Story (08:56), N1 Z2 h5 `* }0 \, [7 p# {
8-5 如虎添翼 - Stroybook addon插件系统介绍 (07:28)
: H& f+ |/ ~( k8 c2 z+ R8-6 更多信息 - 添加 Storybook addon-info 插件 (08:56)5 \! f6 }0 f" H' `: Q6 m, f' C
8-7 自动生成文档 - 添加 react-docgen-typescript 第一部分 (08:17)
6 P5 v: E" m& n0 W2 Y' ]8-8 自动生成文档 - 添加 react-docgen-typescript 第二部分 (05:27)
( M$ u" |* b, I; g- n" p& d! g8-9 大功告成 - Storybook 最终样式调整 (05:44)
% X6 ?8 f( x1 j' n; q* g8-10 完成的 storybook 的架构,给剩下的组件添加 stories
8 x& k8 v3 g5 `6 G5 G$ p* y( T; M6 ]7 H
第9章 进入表单的世界 - Input 组件和 AutoComplete 组件
0 p) M% B  e$ M0 n7 Q9-1 知己知彼 -Input 组件需求分析 (06:09)
5 i0 g8 O( f. w9 s6 x9-2 抛砖引玉 - Input 组件伪代码实现 (08:48)9 n, r3 n% n2 j2 u( D: w
9-3 持续优化 - Input组件代码实现和优化过程 (12:11)
" T4 E# r1 B$ y$ L( F, j1 R9-4 新的挑战 - AutoComplete组件分析 (09:29)
+ `. Z! s7 Z" h# }9 m  K9-5 基本骨架 - AutoComplete 编码第一部分 (14:09); H6 j8 Q7 M: P9 ~
9-6 AutoComplete 支持自定义模版 (11:21)$ q  [! W# i9 u2 o# ~6 V) x: q" H8 L6 t
9-7 异步来了 - AutoComplete 支持异步请求编码 (09:42)+ W) Z1 l+ z5 K! M1 k
9-8 老瓶新酒 - 使用自定义Hook实现 函数防抖 (11:51)2 K* h. f( `: l$ l
9-9 AutoComplete 支持键盘事件 (10:11)
" r; H; D7 C0 D# {4 B) m- V9-10 妙用 useRef - 实现 clickOutSide 功能- (10:57)  [) g: M1 M0 E9 R9 q9 m) O
9-11 完美收尾 - AutoComplete 添加单元测试 (14:08)& S4 Z# ~7 I) ^: x$ z
9-12 Select 组件
) Z, b7 `2 w% d! E
5 V, [$ Q8 R) G+ \% ?/ P第10章 终极任务 - Upload 组件
5 ^* n; ?+ b' k7 v; J/ g10-1 最终任务 - Upload组件需求分析 (06:22)0 K1 R7 [9 N) k' n3 `2 G: O0 m
10-2 下一代 HTTP 库 - axios (05:54): _- z- r! L/ y9 j5 P% @- v
10-3 在线 mock server 和 axios 简单使用 (09:29)6 Z5 e! {. \6 }+ H) k/ H7 ~/ Q  l
10-4 上传文件的基本方式 (09:39)/ v& F# K- z5 D9 j) j. y7 C1 V
10-5 完成基本流程 - Upload 组件编码第一部分 (13:23)
# ?3 A4 ^% |) C* |2 h10-6 完善生命周期 - Upload 组件编码第二部分 (08:00)
+ j0 L) n+ o( F& f* C/ T5 z. H10-7 创建列表数据 - UploadList 组件编码第一部分 (13:36)1 h# e/ n1 u. d1 ^7 E6 y
10-8 显示上传数据 - UploadList 组件编码第二部分 (11:59)
. i; \% E0 r+ ~0 i( p10-9 显示上传进度 - 添加 Progress 组件 (10:29)
; D. a# W( k8 \# Q2 y10-10 精益求精 - 再次分析 Upload 组件更近一步需求 (06:33)  y" O9 o" v- O: i3 x
10-11 Upload 增强交互第一部分 (08:50): E" L! @3 w: {( X1 C
10-12 拖动上传 - 支持 Drag and Drop (10:05)
2 C$ i- g( S  W+ x5 I10-13 异步怎样测试? - Upload 测试第一部分 (12:29)$ @( t6 R4 x; `' _3 V" w0 }
10-14 拖动事件怎样测试? - Upload 测试第二部分 (11:20)* |- J$ f3 X" V9 o# F5 O5 l3 }( ~
5 k7 ?& I2 N$ N6 U
第11章 Javascript 模块打包 - 需要什么类型的模块供各种环境使用?
6 V0 v" ^% K, o, r7 j# D11-1 Javascript模块化发展历史 (07:19)
  O( H: w/ o, T: R1 t$ c11-2 webpack 到底完成什么任务? - bundler的神奇功效 (06:36)1 ^( ?0 B$ D9 @: g3 K
11-3 怎样选择 Javascript 模块格式? (06:38)  n& l8 Z) ?  N" |% e
11-4 创建组件库模块入口文件 (08:23)
/ ^4 J# O9 G+ s: u! I# O' P11-5 驯服tsc - tsconfig 编写第一部分 (08:08)
8 M5 ?. C9 H. P2 j11-6 驯服 tsc - tsconfig 编写第二部分 (06:28), B  L! ^3 P) L' s6 e
11-7 生成最终使用的样式文件 (06:09)
3 A0 x' z  O. X, L  g$ l7 R1 i3 j11-8 使用 npm link 本地测试组件库 第一部分 (06:28)9 I! u+ W8 H. v8 `/ C
11-9 使用 npm link 本地测试组件库 第二部分 (05:14)4 T" t  y0 m" p

# f) C: b1 w( r( _& `第12章 大功告成 - 发布到 Npm,以及添加 CI/CD 支持. c5 o* n. a: D- j  B  B' A
12-1 Npm 简介 (05:31)
) I% J/ v0 ~! H6 c) R12-2 发布组件库到 npm (07:37): Z: ?: F6 E+ L2 O/ H$ d
12-3 瘦身任务 - 精简 package.json 依赖 (07:12)' ]8 A& z. [, l/ g
12-4 万无一失 - 添加发布和 commit 前检查 (09:17)' }4 Y+ a9 o2 J
12-5 使用 Storybook 生成静态文档页面 (07:40)8 L. K! l3 s8 Z$ B1 f
12-6 CI CD 简介 (04:59)
4 G) W# y: q+ [- q12-7 使用 travis 自动运行测试 (08:02)
4 r1 l( E0 N3 T" W12-8 使用 travis 自动发布文档页面 (06:31)
, X, X; x/ @# A7 S( c4 e. J" G; R2 u% A4 s  }9 b
第13章 课程总结
8 h3 l2 L6 V) @* w! H13-1 课程总结 (08:20)4 U; y1 Z9 y4 m" ]

* Z, U+ r6 `. Z# _
: Z* _$ }! Q& }7 q/ M0 y〖下载地址〗
1 A$ Z3 G; c: l; `( k1 L% C$ \
游客,如果您要查看本帖隐藏内容请回复
6 O' `7 |9 D$ ?: D! a
〖升级为永久会员免金币下载全站资源〗
6 }8 i/ S( N/ N6 _全站资源高清无密,每天更新,一次充值,永久可查看网站全部资源:http://www.mano100.cn/rjyfk_url-url.html
7 }2 i1 s0 d; l* x; L  Z
回复

使用道具 举报

2583151529 | 2021-3-15 15:45:21 | 显示全部楼层
666666666666
回复

使用道具 举报

ustc1234 | 2021-3-16 08:47:31 | 显示全部楼层
React+TypeScript高仿AntDesign开发企业级UI组件库
回复

使用道具 举报

众神开挂 | 2021-3-21 11:21:02 | 显示全部楼层
React+TypeScript高仿AntDesign开发企业级UI组件库
回复

使用道具 举报

xiaoyou | 2021-3-31 17:33:13 | 显示全部楼层
支持支持支持支持支持支持
回复

使用道具 举报

我爱学习 | 2021-6-17 14:07:59 | 显示全部楼层
React+TypeScript高仿AntDesign开发企业级UI组件库
回复

使用道具 举报

qwety20185 | 2021-9-25 23:48:50 | 显示全部楼层
React+TypeScript高仿AntDesign开发企业级UI组件库
回复

使用道具 举报

13710858132 | 2022-4-3 20:06:20 | 显示全部楼层
666666666666666
回复

使用道具 举报

春游的夏天 | 2022-5-17 16:24:58 | 显示全部楼层
3hchReact+TypeScript高仿AntDesign开发企业级UI组件库
回复

使用道具 举报

cooper | 2022-9-29 01:17:23 | 显示全部楼层
23323233333333333333
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则