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

  [复制链接]
查看5849 | 回复15 | 2021-11-22 08:23:12 | 显示全部楼层 |阅读模式
16491213136239.png
) [/ [8 U/ M; s6 q3 S$ F% z. \
7 u$ {+ h+ z: D〖课程介绍〗5 O0 U+ \; P. X
从零到一高仿 AntD 使用 Typescript 和 React 开发组件库,在这其中穿插了一系列的知识点: 大型项目的样式组织,react 组件测试,react 动画实现。开发完毕还实现了模块化打包,代码发布再到 CI/CD 的全流程。4 H1 K% u/ u; Q5 l* c: P
" z& ]+ e9 T& |- S# \$ S# _3 Z. T
〖课程目录〗/ b1 D. _+ U$ X% j6 U0 n+ W
第1章 课程导学(此章节必看) 试看+ @: T; Z7 l2 l0 ]( Z/ M* P
1-1 导学(不看错过1个亿) (16:40)试看0 ~5 C" C$ {3 Q
1-2 代码库使用注意事项(必看) (04:33)
7 k4 S- ~3 V' S
5 Q& u) G! t0 X  ^第2章 欢迎来到类型的世界 - Typescript 试看+ e* g( }% K( O) B; C
2-1 什么是 Typescript (05:46)试看+ s, J* H! L# Z% S# M) K
2-2 为什么要使用 Typescript (04:56)9 J' A& p: i  U1 ?  @) {$ U1 \
2-3 安装和初试 Typescript (07:06)0 o- P1 W. x; z- W5 r
2-4 基础类型 (05:54)
* V! X: }: Z, h2-5 any 类型和联合类型 (04:25)
! U" k0 N# U: S2-6 Array 和 Tuple (06:05)' [1 [" i& d' U
2-7 interface 初探 (06:32)
3 P8 k, ^& n  N& q/ F2 j2-8 函数和类型推断 (08:06)( b$ v  _$ ^* I
2-9 类(Class)第一部分 (09:37)
1 Y. z5 g, I/ _# @2-10 类(Class)第二部分 (06:35)
4 b& x( Q" |# i6 o( X* L& Y2-11 类和接口 (07:07)8 K  K' B' L* w
2-12 枚举(Enum) (07:08)
6 A$ y# m- k  a0 E8 B2-13 泛型(Generics) 第一部分 (07:30). {# y$ J, R5 S1 l" r
2-14 泛型(Generics) 第二部分 - 约束泛型 (06:23)
* O* t$ F! i* p3 d1 C2-15 泛型(Generics) 第三部分 - 类和接口 (12:37)
$ S2 b; u) |& j# A4 X3 a# \2-16 类型别名和类型断言 (08:57), O* j% r7 n3 ^6 V5 Y/ T/ A. \
2-17 声明文件 (06:09)* A# i4 n2 u: S& V
: ^# O" L/ q5 H
第3章 神奇的 React 配合 typescript,完美输出
* Q" p# |9 ]1 t3 V& h3-1 React简介和基础知识回顾 (14:39)0 }) Y: |9 Q/ V
3-2 配置 react 开发环境 (08:50)
+ M, q8 n) ?3 H( i6 u* t, D3 ]3-3 第一个组件 - ts为组件助力 (06:26)
4 A# h0 A5 z; r3-4 什么是 和 为什么要使用 React Hook (07:25)$ _% ?3 U- |0 H8 |' N3 @
3-5 在函数组件使用 state - useState Hook (09:10)$ e! x3 [4 J4 V& S6 U
3-6 useEffect 第一部分 - 初出茅庐 (05:31)+ W3 i- G8 C0 B1 f8 X% {
3-7 useEffect 第二部分 - 有始有终 (08:18)
( E8 H% c8 Z; t' T6 P3 `3-8 useEffect 第三部分 - 控制运行 (06:52), ?' L: ~* d- V0 i- U: S4 [3 c
3-9 自定义 Hook - 重构 MouseTracker (06:48)
& {( S- O" O8 J1 Y0 [- w3-10 自定义 Hook 第二部分 - HOC的劣势 (08:10)
& A- l% b8 s. Q7 |$ J& v2 E1 @3-11 自定义 hook 第三部分 - 正确的方式完成 URLLoader (07:39)
6 f9 C/ @* i6 Y  z* i: M4 ?3-12 useRef - state遇到的难题 (05:08)
' Y8 ?4 C/ k: ]2 g& V  X8 ~3-13 useRef - 多次渲染之间的纽带 (07:30)# `0 D  n4 ^7 D# s' x
3-14 useContext - 解决多层传递属性的灵丹妙药 (10:27), M3 u! W: D: n+ i, f2 x2 F
3-15 hook 规则和其他 hook (03:52)
" p" D% _9 @5 K" a; U4 A) q
) g6 c  b  P2 L  x$ {, W1 Q; u第4章 组件库起航 - 你真的能写的好看起来简单的 Button 组件吗? 试看) w& Y. `6 X6 M+ s
4-1 组件库开始起航 - 需求分析 (05:28)
3 [$ x: f& `- l) ?0 S( V4-2 文件结构和代码规范 (09:17)
1 o( S! V3 o, K  S6 ]4-3 样式解决方案分析 (07:37)8 q! |' p* {2 Q& S5 p
4-4 做一次设计师 - 添加自己的色彩体系 (07:02)8 n. V  n6 d; x9 A1 c7 Z
4-5 更多样式变量 - 添加字体变量解决方案 (07:10)
2 V% Z3 b6 k0 b0 t4-6 初次亮相 - 添加 normalize.css (09:06)* \% z$ g! t4 H) J* Q" g
4-7 Button 组件需求分析 (04:58)
# ], T. k& k. T0 n' m1 B" |4-8 小试牛刀 - Button 组件编码 第一部分 (14:18)
2 Q4 _* V) v1 z! Y4-9 添加 Button 基本样式 (10:07)
/ \. d1 j+ Y+ R8 H" t; d& h4-10 升级 Button 组件样式 (12:32)/ a, J9 W1 k" g
4-11 精益求精 - Buton 组件编码第二部分 (08:01)试看4 K) |& V, O7 Y2 g* e/ w
4-12 完成 Alert 组件/ p/ A: J: L2 b& p, u+ C  d$ b

  _& n4 u0 Q/ E5 i, d1 r  H* C0 }第5章 组件测试! \# _, O5 G% `6 S
5-1 为什么要有测试 (07:26)& R1 o: K! t9 K& q6 F9 J
5-2 通用测试框架 Jest 出场 (09:36); J" X2 v: E/ l0 q" `
5-3 React 测试工具 - react-testing-library (09:17)
6 y3 c: O& T( r: @  R; x, Y5-4 添加Button 测试代码 第一部分 (10:33)
+ K% X8 ^" T+ A& v4 x0 ?5 P5-5 添加Button 测试代码 第二部分 (10:49)+ P; A' J7 ^$ X* G% u) P, {
5-6 Alert 组件添加测试用例' l, b% O* [" Y0 l$ I. g( s
/ E# {* z# M; H( i  p5 e( @- K
第6章 更上一层楼 - 完成 Menu 组件
+ ^& D  @% U" ^7 ^) T3 n6-1 Menu 组件需求分析 (07:17)
+ d; y& G' J+ {' }6-2 基础架构 - Menu组件编码第一部分 (10:35)2 r9 B6 w) p4 t- Z( d: H( S
6-3 需求升级 - Menu 组件编码第二部分 (11:09)
, m- o& H  V3 u9 O0 C! e4 F6-4 添加 Menu 样式 (10:21)
: E. g! T" L. I" F! ~9 i6-5 测试驱动 - Menu 测试添加 (17:32)
/ j& `; c  _- Z7 s6 N% P( S6-6 日趋完美 - Menu 组件编码第三部分 (09:15)
- q- H( Z' {. l6-7 功能继续升级 - SubMenu 下拉菜单编码第一部分 (10:39)
6 ^1 Q) C( Z% t6-8 添加交互 - SubMenu下拉菜单编码第二部分 (09:29)
- H9 t, F3 y$ M% B/ n7 i9 m0 d- W6-9 大功告成 - SubMenu 下拉菜单编码第三部分 (10:18), _0 a! }+ Y7 G' |5 z  F: f
6-10 完美组件 - SubMenu 组件添加测试 (13:51)
; K4 d* m$ b* i- V6-11 Tabs 组件0 z9 O" U) y% ^: k, E5 W
1 x% e% \3 k0 O" Z* o; c# J) }
第7章 他山之石 - Icon 组件 和 Transition 组件9 t* [$ J" i8 }6 p) z# [* d
7-1 图标解决方案简介 (07:41): c( ^% C. o5 {; f- ]6 s
7-2 他山之石 - Icon组件编码第一部分 (10:12)
: F, x) Q% @9 ^  @7-3 Icon 组件样式添加 (06:00)$ G, p3 r+ u/ C* V, p
7-4 让图标动起来 - 动画效果第一种实现方法 (08:19)
( j; k- D. }  x) [. f2 d% Y; E! R7-5 React Transition Group 简介 (07:59)+ x, O  ~+ R- F% J1 ]* k* o
7-6 React Transition Group 实践 - 动画效果第二种实现方式 (06:52)
# o. M0 g$ o" h1 ~7-7 尽善尽美 - React Transition Group 添加菜单消失的动画 (06:12)
% x0 P$ {6 X2 l! n+ ?7-8 拿来主义 - 自定义 Transition 组件编码第一部分 (10:42)
. A1 l9 q& G- J# o7-9 拿来主义 - 自定义 Transition 组件编码第二部分 (07:16)
; x3 h; G$ g! k7-10 完成的 Icon 和 Transition 组件0 m7 K* W) o% v4 g
& ]1 z/ x3 y; U& L- {
第8章 Storybook - 本地调试组件和生成文档页面的利器
/ e+ `! F9 U, x/ I' ]8-1 什么是 Storybook (05:35)6 o+ \5 `& O; v  u. e- i0 t
8-2 安装 Stroybook (05:55); ~* E: l' a/ m3 n# V
8-3 Storybook 支持 Typescript (07:23)
- y* F& u2 h$ x1 o/ a5 ^8 p1 a8-4 展示秀- 为 Button 添加 Story (08:56)% I' y, \. z& ~0 v9 |% a
8-5 如虎添翼 - Stroybook addon插件系统介绍 (07:28)
: ^! u# H+ r3 J2 p  J: I- y5 R8-6 更多信息 - 添加 Storybook addon-info 插件 (08:56)
5 O; C8 }$ R+ J2 c% h8-7 自动生成文档 - 添加 react-docgen-typescript 第一部分 (08:17)7 M& W! @# A1 S
8-8 自动生成文档 - 添加 react-docgen-typescript 第二部分 (05:27)5 m# O3 }# K  @
8-9 大功告成 - Storybook 最终样式调整 (05:44)* h2 K: h/ i, y4 Z
8-10 完成的 storybook 的架构,给剩下的组件添加 stories( |. i$ O% b8 k0 U( @9 q) z
$ P* x+ J& R) z+ r. @
第9章 进入表单的世界 - Input 组件和 AutoComplete 组件
" z- X, y3 o6 ^' t  @) E$ ?: s! L9-1 知己知彼 -Input 组件需求分析 (06:09)6 z6 F/ I" i# ?/ s$ {/ u/ y$ _
9-2 抛砖引玉 - Input 组件伪代码实现 (08:48)
" s, h/ Q9 d3 G# S9-3 持续优化 - Input组件代码实现和优化过程 (12:11)
3 e/ \! F* r" @/ z9-4 新的挑战 - AutoComplete组件分析 (09:29)6 f6 p6 L) e- t! N* K1 ?
9-5 基本骨架 - AutoComplete 编码第一部分 (14:09)  e* q" w9 ]: I
9-6 AutoComplete 支持自定义模版 (11:21)
. ^& S3 L/ L& N% z6 F  `9-7 异步来了 - AutoComplete 支持异步请求编码 (09:42)) z. f4 K/ M# ^: i5 x6 ]% H
9-8 老瓶新酒 - 使用自定义Hook实现 函数防抖 (11:51)
5 C. g- T' ]: }7 h  I" A5 D- I9-9 AutoComplete 支持键盘事件 (10:11)
. ]" q# H# c9 J0 k* U9-10 妙用 useRef - 实现 clickOutSide 功能- (10:57)
6 M1 A8 }! L/ c, i; \6 g; C9-11 完美收尾 - AutoComplete 添加单元测试 (14:08)* D3 W1 P" {7 `- G% W2 p/ z
9-12 Select 组件. N1 ^* R8 d" z* S5 I

; M  i' t" z5 s  |3 |第10章 终极任务 - Upload 组件
- b1 y. n% k) i; A/ A1 i0 P10-1 最终任务 - Upload组件需求分析 (06:22)
7 |/ M* s! b7 W+ b4 p10-2 下一代 HTTP 库 - axios (05:54)9 ~% u3 p: q+ A# i- E% Q
10-3 在线 mock server 和 axios 简单使用 (09:29)
( v7 h5 y, C7 U$ X- I/ I* F: `- v10-4 上传文件的基本方式 (09:39)
3 F) w" m4 b6 g1 j9 C10-5 完成基本流程 - Upload 组件编码第一部分 (13:23)& U! m  |7 C: h* X* R
10-6 完善生命周期 - Upload 组件编码第二部分 (08:00)) A$ a+ D5 ~4 B3 _
10-7 创建列表数据 - UploadList 组件编码第一部分 (13:36)4 y( Q$ n7 {8 k2 V
10-8 显示上传数据 - UploadList 组件编码第二部分 (11:59)
- q7 X7 X! W  F$ m5 A+ L/ m10-9 显示上传进度 - 添加 Progress 组件 (10:29)/ E3 W, u9 W' D
10-10 精益求精 - 再次分析 Upload 组件更近一步需求 (06:33)  c$ s6 l4 B9 V9 }
10-11 Upload 增强交互第一部分 (08:50)
  V) Y6 f! F# Q) i) @7 ?10-12 拖动上传 - 支持 Drag and Drop (10:05)
# }2 g" `3 l# u% ~$ {10-13 异步怎样测试? - Upload 测试第一部分 (12:29)
6 A- ^" y3 _' p9 ?, B7 z6 q10-14 拖动事件怎样测试? - Upload 测试第二部分 (11:20)
; d2 X4 e3 |$ X9 J4 y, k' y( g: W! B& r0 o
第11章 Javascript 模块打包 - 需要什么类型的模块供各种环境使用?
) e3 L8 L% G6 R$ q6 O2 f11-1 Javascript模块化发展历史 (07:19)
$ T9 Q& {2 L, O4 [4 ^7 R11-2 webpack 到底完成什么任务? - bundler的神奇功效 (06:36)
7 m) P( P% e8 G11-3 怎样选择 Javascript 模块格式? (06:38)7 r, O! e: Q2 l/ q% g3 |" ^: r
11-4 创建组件库模块入口文件 (08:23)
! X, I9 B6 E' N& G- o11-5 驯服tsc - tsconfig 编写第一部分 (08:08)
2 m; [, X3 W) j$ |7 i% e11-6 驯服 tsc - tsconfig 编写第二部分 (06:28)) ~2 m& p9 J3 a6 @0 ?3 p5 }' ~6 X' @+ c
11-7 生成最终使用的样式文件 (06:09)
: S0 p" |# m+ ]$ N, e% p# g5 D/ }11-8 使用 npm link 本地测试组件库 第一部分 (06:28)% {+ C. Q! f) U7 u% `
11-9 使用 npm link 本地测试组件库 第二部分 (05:14)5 v$ N: n5 M, s+ r  Z2 g
* D# e& i, t: P. l; z
第12章 大功告成 - 发布到 Npm,以及添加 CI/CD 支持1 d0 w7 c3 _/ @* U% [- \
12-1 Npm 简介 (05:31)
3 g/ R2 ~$ F0 Z  R3 K12-2 发布组件库到 npm (07:37), M5 U& k5 D3 r& W
12-3 瘦身任务 - 精简 package.json 依赖 (07:12)
' s* D. I5 O4 Y* F12-4 万无一失 - 添加发布和 commit 前检查 (09:17)  {5 M8 Z- B6 A2 q* I
12-5 使用 Storybook 生成静态文档页面 (07:40)( ~/ O2 o* J1 }+ h) O* G
12-6 CI CD 简介 (04:59)
" g0 W( H6 V4 {" M7 ?( `# u12-7 使用 travis 自动运行测试 (08:02)
; J& u' y/ K6 K- C! i' L% C* }  D12-8 使用 travis 自动发布文档页面 (06:31)  ^" {  E5 U9 \  f

$ b) h3 L  I1 M2 t第13章 课程总结& f0 M8 O4 V1 P) c
13-1 课程总结 (08:20)
# M9 O, h/ P+ x+ |( _2 c/ G- n
. I5 Y2 h, q0 |. P9 H
( c- [* G' N- t+ o8 N2 g. a〖下载地址〗
; ?, O6 v- v: o6 z2 L- i2 J& B7 N
游客,如果您要查看本帖隐藏内容请回复
1 u' S9 r2 }0 ~- R
〖升级为永久会员免金币下载全站资源〗0 B/ \3 d3 [: E3 m( ]
全站资源高清无密,每天更新,一次充值,永久可查看网站全部资源:http://www.mano100.cn/rjyfk_url-url.html

) c1 w5 o8 i" l4 d/ I/ M9 A
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则