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

  [复制链接]
查看6225 | 回复15 | 2021-11-22 08:23:12 | 显示全部楼层 |阅读模式
16491213136239.png 5 e2 Q! u; m  W

8 o: Y6 s# |1 g〖课程介绍〗
, e7 `! J6 E& q从零到一高仿 AntD 使用 Typescript 和 React 开发组件库,在这其中穿插了一系列的知识点: 大型项目的样式组织,react 组件测试,react 动画实现。开发完毕还实现了模块化打包,代码发布再到 CI/CD 的全流程。
+ w$ x& y7 V3 V" ]8 O
- K, ^4 u% D  b7 q' \〖课程目录〗* v: `6 V4 n0 n! W) n8 {5 W' I
第1章 课程导学(此章节必看) 试看% Q4 v$ I0 d* t0 P4 R9 S. o
1-1 导学(不看错过1个亿) (16:40)试看2 p3 @5 a, A; S2 J1 K
1-2 代码库使用注意事项(必看) (04:33)
* _' c# x0 H4 e7 g- c0 L% L3 u
+ b; u& d* k; k2 U( r1 }: d' D: }$ H第2章 欢迎来到类型的世界 - Typescript 试看/ u% r. k% t1 K3 v# S- R0 q1 C
2-1 什么是 Typescript (05:46)试看
- r. s0 r1 ~8 Z4 K3 p4 s: l, h2-2 为什么要使用 Typescript (04:56)
) z9 q$ Y& L, n9 m) m- W! V7 ?2-3 安装和初试 Typescript (07:06)
2 y' o0 o2 ~9 c  q6 C: E/ \2-4 基础类型 (05:54)
4 t' w, |: O' ~' K$ c0 h2-5 any 类型和联合类型 (04:25)
6 k: t, p3 f3 }9 Q4 b( r2-6 Array 和 Tuple (06:05)
& G5 ^. A( m! R$ c1 }  j2-7 interface 初探 (06:32)) l' p% Z5 b4 O, L7 E, Z! F% E
2-8 函数和类型推断 (08:06)8 s  B6 v/ A+ S8 Z6 M. `" Q; }9 W# a1 D
2-9 类(Class)第一部分 (09:37)
9 I/ q6 r( n$ x+ P( m! j$ T2-10 类(Class)第二部分 (06:35)4 u' z+ ], Q; C+ I8 F
2-11 类和接口 (07:07)8 K3 T9 B; m+ x. V6 }4 ^
2-12 枚举(Enum) (07:08)& C0 ^1 j( _' c; i9 s
2-13 泛型(Generics) 第一部分 (07:30)6 O+ F! g; {5 z3 g& z
2-14 泛型(Generics) 第二部分 - 约束泛型 (06:23)
9 Q5 G1 f' c, _5 q) A2-15 泛型(Generics) 第三部分 - 类和接口 (12:37)1 l6 n& d/ K+ v) m; D2 ~5 |
2-16 类型别名和类型断言 (08:57)
6 z" ]4 L+ [8 h& P  P) f2-17 声明文件 (06:09)
2 Z6 r3 j' n/ ^! p3 S
9 m/ q7 [' g% s第3章 神奇的 React 配合 typescript,完美输出' Y/ ]! R, B, T2 [6 `! x; E$ I
3-1 React简介和基础知识回顾 (14:39)
' w( U) K$ R" z* }0 n* u3-2 配置 react 开发环境 (08:50)
( N( I. v6 F+ }& F* G3-3 第一个组件 - ts为组件助力 (06:26)
; `3 O- }* \0 d, f" |3-4 什么是 和 为什么要使用 React Hook (07:25)
. k  A" q, `/ R+ o) |/ G' ?; w  y3-5 在函数组件使用 state - useState Hook (09:10)2 H7 y# y. T& L
3-6 useEffect 第一部分 - 初出茅庐 (05:31)  _2 p9 M9 S' q/ q
3-7 useEffect 第二部分 - 有始有终 (08:18)' _6 F0 S% `; Z- v# l: x. \
3-8 useEffect 第三部分 - 控制运行 (06:52)
. X- g+ B( c$ }$ |: x# y3-9 自定义 Hook - 重构 MouseTracker (06:48). B/ `& N5 y, @, d  O3 R" \$ d
3-10 自定义 Hook 第二部分 - HOC的劣势 (08:10)
0 {8 S+ D1 V, O* k- @6 i4 y3-11 自定义 hook 第三部分 - 正确的方式完成 URLLoader (07:39)7 ^; B8 `+ i* A
3-12 useRef - state遇到的难题 (05:08)
1 W0 J1 o, G2 d! P# F3-13 useRef - 多次渲染之间的纽带 (07:30)1 B. M: A8 i1 C6 g  e
3-14 useContext - 解决多层传递属性的灵丹妙药 (10:27), n3 p$ Y2 h9 ~
3-15 hook 规则和其他 hook (03:52)
- S5 V4 b8 A+ p* g' n- i5 D8 M" ^& E  B# E# ^( J" u
第4章 组件库起航 - 你真的能写的好看起来简单的 Button 组件吗? 试看
# i% J; r. ~1 z% d$ i0 v5 P4-1 组件库开始起航 - 需求分析 (05:28)
3 N! W' @# \1 n7 a; ?4-2 文件结构和代码规范 (09:17)% n1 E7 i! M, @* P) K
4-3 样式解决方案分析 (07:37)
6 Q5 X; c' l; I7 Q/ e4-4 做一次设计师 - 添加自己的色彩体系 (07:02)+ m* \" d" A9 Y1 ]: w# v7 `6 N& P
4-5 更多样式变量 - 添加字体变量解决方案 (07:10)
& l: w2 w1 Z4 ]% `4-6 初次亮相 - 添加 normalize.css (09:06)  o  h: ], q/ a" ?3 n, ]0 k; n
4-7 Button 组件需求分析 (04:58)
  N" N9 n0 k1 y  z1 H4-8 小试牛刀 - Button 组件编码 第一部分 (14:18)' i+ `3 u. E0 [+ y
4-9 添加 Button 基本样式 (10:07)
2 j# ~5 y+ I) S4-10 升级 Button 组件样式 (12:32); @3 ]4 a( }- c6 Q8 I
4-11 精益求精 - Buton 组件编码第二部分 (08:01)试看
& A% Q- `$ W* c% H. Y9 ?* a& O6 I4-12 完成 Alert 组件& Y6 d1 W4 P' w" p7 g4 Z( L
( B; r) r1 N: w, {  v7 j! O
第5章 组件测试
+ X* r7 B, ]! v6 q3 E+ L8 C5-1 为什么要有测试 (07:26): C6 _' Z  d) L$ J# {
5-2 通用测试框架 Jest 出场 (09:36), `! u/ x: R, |+ a$ g
5-3 React 测试工具 - react-testing-library (09:17)) Y6 u4 N9 d: _' S
5-4 添加Button 测试代码 第一部分 (10:33)8 }) ]2 x+ c& s* ^1 W
5-5 添加Button 测试代码 第二部分 (10:49)4 X3 W: d, i0 ~# F' Y5 i
5-6 Alert 组件添加测试用例& k" L6 N% B* ~6 q% D+ w; u
* \5 t, j2 u. h  ]) ~
第6章 更上一层楼 - 完成 Menu 组件
  c  h' I( O. u6-1 Menu 组件需求分析 (07:17)4 x  [, @; u9 Q0 f/ K! D5 ~
6-2 基础架构 - Menu组件编码第一部分 (10:35)* P- X. G6 Y; L0 ?  J) ?
6-3 需求升级 - Menu 组件编码第二部分 (11:09)# ]6 Q8 I: N3 s) ?8 l
6-4 添加 Menu 样式 (10:21)8 h  F% ~! F0 [# g! p, C' d  |
6-5 测试驱动 - Menu 测试添加 (17:32)7 s4 B, r0 K$ z  c9 B
6-6 日趋完美 - Menu 组件编码第三部分 (09:15)4 L! C1 j6 v3 |5 Z1 Q4 i/ S
6-7 功能继续升级 - SubMenu 下拉菜单编码第一部分 (10:39)" p4 Y% q& x) |& n2 g6 y# E
6-8 添加交互 - SubMenu下拉菜单编码第二部分 (09:29)
3 s# h+ v2 j" J4 I/ X5 I3 x: G6 U, b6-9 大功告成 - SubMenu 下拉菜单编码第三部分 (10:18)
8 k" o$ p; H# c6-10 完美组件 - SubMenu 组件添加测试 (13:51)* J! ~9 v" }8 G. v
6-11 Tabs 组件
% `4 n' T+ H! E3 A2 p) Z: Q' ~4 R! }! O( w9 H/ G
第7章 他山之石 - Icon 组件 和 Transition 组件
5 t% A- a1 ]9 j4 L7-1 图标解决方案简介 (07:41)6 [1 R! Q% ~, T% W- Y
7-2 他山之石 - Icon组件编码第一部分 (10:12)
, e- u2 ~/ q* i9 [5 t* m. F7-3 Icon 组件样式添加 (06:00)% B) ~! {! N$ u8 X0 u; J
7-4 让图标动起来 - 动画效果第一种实现方法 (08:19)
8 ^; ?6 `- S& p) x; r) c. C2 A7-5 React Transition Group 简介 (07:59)
9 m0 P* [0 d/ ?, o$ i" d7-6 React Transition Group 实践 - 动画效果第二种实现方式 (06:52)
- Y6 j9 ]% t) M! B* Y7-7 尽善尽美 - React Transition Group 添加菜单消失的动画 (06:12)
" |% m4 Q$ d1 k' l7-8 拿来主义 - 自定义 Transition 组件编码第一部分 (10:42)
0 C, m' D" e0 R) m+ [) P7 Z7-9 拿来主义 - 自定义 Transition 组件编码第二部分 (07:16)
2 R' o/ ^0 u# m( k5 O3 y+ M7-10 完成的 Icon 和 Transition 组件
' r' y2 A' z  }0 V  E' P: ^/ \, l0 ~8 ]  C
第8章 Storybook - 本地调试组件和生成文档页面的利器
( J. p. C! K2 ^. G8-1 什么是 Storybook (05:35)1 O8 t3 K4 o+ M* v) R
8-2 安装 Stroybook (05:55)4 y7 t1 ]2 @/ N% b" O
8-3 Storybook 支持 Typescript (07:23)" }# V/ k4 O3 N4 \. I' m& B. L: `
8-4 展示秀- 为 Button 添加 Story (08:56)8 k0 J; ^; m# @- K
8-5 如虎添翼 - Stroybook addon插件系统介绍 (07:28)
' c* a. B9 f: [+ ^* j7 u8-6 更多信息 - 添加 Storybook addon-info 插件 (08:56)
/ G! e9 l/ Q$ z  M- h- @' U$ D; S8-7 自动生成文档 - 添加 react-docgen-typescript 第一部分 (08:17)$ T( N: j# K; Y2 x# r' b
8-8 自动生成文档 - 添加 react-docgen-typescript 第二部分 (05:27)
& g4 S  X5 ^' \1 q) P2 x8-9 大功告成 - Storybook 最终样式调整 (05:44)! @4 T+ Z, {4 k: s' i2 K  ?( v
8-10 完成的 storybook 的架构,给剩下的组件添加 stories( M+ b- x- D. }2 ?, T0 n, \: c

& G" S1 b$ l: Y: l% a* d) k8 G+ k2 S第9章 进入表单的世界 - Input 组件和 AutoComplete 组件
8 H3 a6 v; H% e9-1 知己知彼 -Input 组件需求分析 (06:09)' s& S$ M3 F0 G* n$ q+ Q- _
9-2 抛砖引玉 - Input 组件伪代码实现 (08:48)% v9 R- O, I. q. P8 a! M
9-3 持续优化 - Input组件代码实现和优化过程 (12:11)
2 b, W8 v1 [; G5 _& f' x8 y. A9-4 新的挑战 - AutoComplete组件分析 (09:29)
" c0 W8 d9 U4 \0 ^9-5 基本骨架 - AutoComplete 编码第一部分 (14:09)
: {3 ^  b# h8 ~9-6 AutoComplete 支持自定义模版 (11:21)
* |* S  _9 P) ^* T3 }' Z" M9-7 异步来了 - AutoComplete 支持异步请求编码 (09:42)- X# J* B: |' Q
9-8 老瓶新酒 - 使用自定义Hook实现 函数防抖 (11:51)2 C; g; H: X+ J% c. x* b  j
9-9 AutoComplete 支持键盘事件 (10:11)' V0 c, v& }6 d1 M% ?7 R
9-10 妙用 useRef - 实现 clickOutSide 功能- (10:57)1 ]- Z1 C/ v; n4 C1 ^  h; o5 \" w* \5 @
9-11 完美收尾 - AutoComplete 添加单元测试 (14:08)! d  l8 d' Q3 Q
9-12 Select 组件1 d, ^9 A; L: y( W8 s4 w3 M

0 \: h1 x+ M: _3 G' D- y" I; g  e: }第10章 终极任务 - Upload 组件; e0 s# m6 }. ]. h) l
10-1 最终任务 - Upload组件需求分析 (06:22)
$ b! {2 J; z6 L10-2 下一代 HTTP 库 - axios (05:54)# Q' }) h3 P0 i: @9 G- P8 S" X0 g$ Q. e
10-3 在线 mock server 和 axios 简单使用 (09:29)0 R, n) J0 ]7 T3 B9 s* U& }
10-4 上传文件的基本方式 (09:39)
0 q- m. @# o+ I' v! u10-5 完成基本流程 - Upload 组件编码第一部分 (13:23)
" C" i6 C" H% R  D! Z10-6 完善生命周期 - Upload 组件编码第二部分 (08:00)8 M/ Q. \& R- n( }
10-7 创建列表数据 - UploadList 组件编码第一部分 (13:36)
3 \/ n  a) Z: g10-8 显示上传数据 - UploadList 组件编码第二部分 (11:59)+ n; D) E2 h, M" Z1 a( b0 J4 B6 V
10-9 显示上传进度 - 添加 Progress 组件 (10:29)# r& `4 \4 _' C% [( N
10-10 精益求精 - 再次分析 Upload 组件更近一步需求 (06:33)9 T1 _) H5 t$ o2 `2 N) ~, @
10-11 Upload 增强交互第一部分 (08:50)
$ _7 L! F( E5 h- O. O) @10-12 拖动上传 - 支持 Drag and Drop (10:05)8 G% F  p$ n" [
10-13 异步怎样测试? - Upload 测试第一部分 (12:29)
5 [9 ^0 d8 B( f& _. V2 A10-14 拖动事件怎样测试? - Upload 测试第二部分 (11:20)
% c2 L( t% i/ G9 B- q' o$ P$ Y) [
第11章 Javascript 模块打包 - 需要什么类型的模块供各种环境使用?
  v. x9 Y! n! s* h11-1 Javascript模块化发展历史 (07:19)
2 h: F. S0 \: V5 E8 B11-2 webpack 到底完成什么任务? - bundler的神奇功效 (06:36)
! r) y% I5 ?. Z8 S4 C. i* ]! n- M11-3 怎样选择 Javascript 模块格式? (06:38)* j/ y$ Y6 ~6 R- J8 l- x
11-4 创建组件库模块入口文件 (08:23); I# {, ~3 ^3 w7 v+ Q: t; S# J
11-5 驯服tsc - tsconfig 编写第一部分 (08:08)" Y* r5 |& b3 r9 _* r7 I
11-6 驯服 tsc - tsconfig 编写第二部分 (06:28)6 L' X9 e) {' E8 ^
11-7 生成最终使用的样式文件 (06:09). Y# p& ?# o) Y  R( `
11-8 使用 npm link 本地测试组件库 第一部分 (06:28)
" z6 |" H& ~3 T/ |6 i% A* d11-9 使用 npm link 本地测试组件库 第二部分 (05:14)
- h2 q& @8 v; ?( c" ]$ h" ?, c" K" B4 q' Q& _) n
第12章 大功告成 - 发布到 Npm,以及添加 CI/CD 支持4 Y! j! g* I% J( a7 [( L
12-1 Npm 简介 (05:31)
7 S- ?- r2 w8 W* V12-2 发布组件库到 npm (07:37)$ v% a0 a: ^) S7 H7 Z2 G
12-3 瘦身任务 - 精简 package.json 依赖 (07:12)
, `; p' S4 O7 a/ J- G  S  N: v12-4 万无一失 - 添加发布和 commit 前检查 (09:17)
( w6 }& _7 b! d& S# D6 _12-5 使用 Storybook 生成静态文档页面 (07:40)! P2 X( {" a; `; k
12-6 CI CD 简介 (04:59)
! D' l$ d0 X( O; R! w' j, J12-7 使用 travis 自动运行测试 (08:02)
+ J" d4 Z- F% U$ u6 {12-8 使用 travis 自动发布文档页面 (06:31)1 j: K7 _+ N" _8 p1 ?* K6 t9 g& z
! F2 F& d8 ~5 Q9 B" e
第13章 课程总结
2 T6 d6 @* s0 V# k! k6 _8 f& ^13-1 课程总结 (08:20)  t, a! z  {8 d9 X1 a
" |4 o) ?; w" `

8 F* ]/ Q8 Z+ I〖下载地址〗* w( H* Y' g4 O8 S! f/ x9 Y! y' Z
游客,如果您要查看本帖隐藏内容请回复
/ Y# E9 N* \+ c- K
〖升级为永久会员免金币下载全站资源〗' ~8 }  b4 C3 J- C
全站资源高清无密,每天更新,一次充值,永久可查看网站全部资源:http://www.mano100.cn/rjyfk_url-url.html
& m# U  Q) a: E  U! X2 p* k% z1 `7 P
回复

使用道具 举报

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
回复

使用道具 举报

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

本版积分规则