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

  [复制链接]
查看1592 | 回复14 | 2021-11-22 08:23:12 | 显示全部楼层 |阅读模式
16491213136239.png
& D1 k, b. f( J. Q' A+ U
2 n4 |" I9 v% t7 T) q% |〖课程介绍〗+ @. N) Q$ Q. O! G& a
从零到一高仿 AntD 使用 Typescript 和 React 开发组件库,在这其中穿插了一系列的知识点: 大型项目的样式组织,react 组件测试,react 动画实现。开发完毕还实现了模块化打包,代码发布再到 CI/CD 的全流程。
9 V- x( C. u, d3 h  R. |5 o0 b
! O; l, [. N/ y, G' ^〖课程目录〗
3 c+ |7 {9 Y& R1 U  ?3 d( y第1章 课程导学(此章节必看) 试看; B3 a/ l( d/ s# ~" a: [
1-1 导学(不看错过1个亿) (16:40)试看
: H2 w# X2 W% p1-2 代码库使用注意事项(必看) (04:33)7 h) m2 Z( Y2 P/ ]' u: m. z
7 o8 W. A: S4 Y  z! @
第2章 欢迎来到类型的世界 - Typescript 试看: x" w' X  t$ C* b: ]! v2 a" X0 y
2-1 什么是 Typescript (05:46)试看5 x3 G- s0 d5 H( V; P
2-2 为什么要使用 Typescript (04:56)
3 @+ E3 V$ o& `. x+ R( o2-3 安装和初试 Typescript (07:06)
* _, G" _) q# o: s2-4 基础类型 (05:54)& Q1 ]4 r) t3 f& Q
2-5 any 类型和联合类型 (04:25)4 r0 G4 ~# o5 A0 c9 h
2-6 Array 和 Tuple (06:05)
- J5 r6 N( ~! z' D# `& ^$ t! q6 F2-7 interface 初探 (06:32)
. t9 ~6 f' W; ~3 P2-8 函数和类型推断 (08:06)
% _8 q& n' g, G6 E( L/ @2-9 类(Class)第一部分 (09:37)
- {0 d. x2 F, t2 ?2-10 类(Class)第二部分 (06:35)
1 [6 Y# L3 Z: k' N: k2-11 类和接口 (07:07)$ v8 u% p" L. b
2-12 枚举(Enum) (07:08)
0 n3 ~7 k+ X5 H2-13 泛型(Generics) 第一部分 (07:30)! `! D  U) v6 s0 p/ c! s. @
2-14 泛型(Generics) 第二部分 - 约束泛型 (06:23)
8 d0 j+ W) Q+ q/ p2 _8 X' {2-15 泛型(Generics) 第三部分 - 类和接口 (12:37), d1 [& X' f7 }) s$ ]
2-16 类型别名和类型断言 (08:57)
. q# J9 |$ l5 u  u& a$ f3 r* R2-17 声明文件 (06:09)4 r. E7 B' T, K. l7 Y; i8 K
+ ]  ~) U% r/ G( I& V9 j! T
第3章 神奇的 React 配合 typescript,完美输出+ j! A9 d2 t3 P( N! t
3-1 React简介和基础知识回顾 (14:39)+ I+ r9 q3 i! L
3-2 配置 react 开发环境 (08:50). Z- F, s; o8 U0 h; w% f
3-3 第一个组件 - ts为组件助力 (06:26)  b$ t4 P; e9 v. [
3-4 什么是 和 为什么要使用 React Hook (07:25)" {4 C8 _$ V: @' `6 k
3-5 在函数组件使用 state - useState Hook (09:10)1 K  W& v! u( e. l
3-6 useEffect 第一部分 - 初出茅庐 (05:31)
1 A- ]5 q3 c. {3-7 useEffect 第二部分 - 有始有终 (08:18)
' q, S( Z) }5 Z4 ^2 \, W$ E3-8 useEffect 第三部分 - 控制运行 (06:52)
( G) |# n" ?* V" [% X) B3-9 自定义 Hook - 重构 MouseTracker (06:48)' U0 P  Q3 k, S$ Z2 y" M
3-10 自定义 Hook 第二部分 - HOC的劣势 (08:10)
) R8 b+ `  [9 A) i9 ]( C& j, d) @3-11 自定义 hook 第三部分 - 正确的方式完成 URLLoader (07:39)1 x+ P# Y9 s+ g4 a# |( L6 P, K% V, s
3-12 useRef - state遇到的难题 (05:08)
' n/ H' _7 n" d3-13 useRef - 多次渲染之间的纽带 (07:30)
1 Z; m9 X3 t7 U  t3-14 useContext - 解决多层传递属性的灵丹妙药 (10:27)
( w1 T' d9 Z. \7 T: {; o/ z3-15 hook 规则和其他 hook (03:52)
% A% p* W8 Z! O& Y9 h9 _: L9 `4 R9 ~3 X! C4 J3 \, Y* G& I
第4章 组件库起航 - 你真的能写的好看起来简单的 Button 组件吗? 试看
5 S) ?; t5 O, X' L* S# A4-1 组件库开始起航 - 需求分析 (05:28)
# K$ p  d$ \4 q  h2 V4-2 文件结构和代码规范 (09:17)
' p, H% X3 V& l: _4-3 样式解决方案分析 (07:37)
% o  K/ i4 E- p3 Q4-4 做一次设计师 - 添加自己的色彩体系 (07:02)
, Y( f" U! ~7 V# [5 O. X- E4-5 更多样式变量 - 添加字体变量解决方案 (07:10)
  o; D6 L  H# W& l! r2 V( y4-6 初次亮相 - 添加 normalize.css (09:06)
8 H& k6 P6 O4 Y" B% U* z, q& A4-7 Button 组件需求分析 (04:58)* T( f; W" f6 t/ J) b3 _7 D( P
4-8 小试牛刀 - Button 组件编码 第一部分 (14:18)
( d* c5 C+ t. o) A5 N4-9 添加 Button 基本样式 (10:07)- O' I  w9 @. ^
4-10 升级 Button 组件样式 (12:32)7 Z  Z, w: _- C5 G4 c( M
4-11 精益求精 - Buton 组件编码第二部分 (08:01)试看
2 r7 n  m* a5 P4-12 完成 Alert 组件2 _; B9 N0 T2 G

. `6 F6 `/ {, V第5章 组件测试
! s* G, Y4 D" x( k5-1 为什么要有测试 (07:26). P9 a/ S* d! g6 h
5-2 通用测试框架 Jest 出场 (09:36)- r+ @5 @6 {4 O! z$ z& o
5-3 React 测试工具 - react-testing-library (09:17)
/ A. q! p! V- ^8 P9 e' C4 K5-4 添加Button 测试代码 第一部分 (10:33)
, \2 z& r7 B: a: ]( ^1 m5-5 添加Button 测试代码 第二部分 (10:49)
, Z9 J0 [6 S9 c5-6 Alert 组件添加测试用例
# q% r* w" F6 V8 g5 H. J# ?+ H9 R& x) _
第6章 更上一层楼 - 完成 Menu 组件
: [7 l2 r5 I" t, e4 \6-1 Menu 组件需求分析 (07:17)5 q$ w( F( {+ g0 {7 u  S
6-2 基础架构 - Menu组件编码第一部分 (10:35)
3 z# Z$ i3 C: [2 ~4 z8 d9 M0 {6-3 需求升级 - Menu 组件编码第二部分 (11:09)
  l( b! w/ D% X- ~* u' w% w6-4 添加 Menu 样式 (10:21)  @. i- S/ e/ m# J* K" O. A4 i
6-5 测试驱动 - Menu 测试添加 (17:32)
/ u0 F1 K9 a" v5 \2 R+ K6-6 日趋完美 - Menu 组件编码第三部分 (09:15)
( m- F5 r/ v: C) O  T4 D( t6-7 功能继续升级 - SubMenu 下拉菜单编码第一部分 (10:39)5 u0 x3 o1 X- o1 x, g
6-8 添加交互 - SubMenu下拉菜单编码第二部分 (09:29)  k& S! H" O& }  v7 e
6-9 大功告成 - SubMenu 下拉菜单编码第三部分 (10:18)
! l4 y& F" ?# }+ G. Y; {6-10 完美组件 - SubMenu 组件添加测试 (13:51)
3 e2 {9 |& d+ D6-11 Tabs 组件
, c+ \  f3 e7 z0 T( H8 n( w- c5 C2 B: ~" u; C
第7章 他山之石 - Icon 组件 和 Transition 组件( i& D4 I$ o4 g) m' D3 K
7-1 图标解决方案简介 (07:41)
0 C* ^+ K6 n" N$ L7-2 他山之石 - Icon组件编码第一部分 (10:12)
) Q( q3 C/ t0 H3 ?6 x6 e7-3 Icon 组件样式添加 (06:00)
% Q  Z! m8 a; {- v( c' [) |7-4 让图标动起来 - 动画效果第一种实现方法 (08:19)
6 o& X4 F* b2 P! h- G4 t3 k, _5 ^7-5 React Transition Group 简介 (07:59): y& Q7 i  N" X, g5 k# w' s
7-6 React Transition Group 实践 - 动画效果第二种实现方式 (06:52)
* d) r9 q6 O2 T! @/ u7-7 尽善尽美 - React Transition Group 添加菜单消失的动画 (06:12)6 @# r) k# z- ^
7-8 拿来主义 - 自定义 Transition 组件编码第一部分 (10:42)
! o5 Q4 P5 H* X4 J% c' a) g7-9 拿来主义 - 自定义 Transition 组件编码第二部分 (07:16)
; \2 a. e) n  `+ l/ J7-10 完成的 Icon 和 Transition 组件" j% {6 ^# k, M/ y* ~  Q8 ]+ D

1 y6 W" c- w2 \第8章 Storybook - 本地调试组件和生成文档页面的利器
) a% n  X' U7 m! y2 C4 m8-1 什么是 Storybook (05:35)" u. J* m9 x9 ?" n5 c. {
8-2 安装 Stroybook (05:55)
" ^$ P( K3 y  v9 B4 q4 n( C& j; g8-3 Storybook 支持 Typescript (07:23)
, x+ E; N2 b( d2 G& h+ G4 j8-4 展示秀- 为 Button 添加 Story (08:56)$ p: B& S8 C6 p% I
8-5 如虎添翼 - Stroybook addon插件系统介绍 (07:28)
6 b# G, a. E) \0 Y8-6 更多信息 - 添加 Storybook addon-info 插件 (08:56): p4 L+ d( F$ n1 h1 a
8-7 自动生成文档 - 添加 react-docgen-typescript 第一部分 (08:17)
& R5 D8 I- n! @5 V5 Y8-8 自动生成文档 - 添加 react-docgen-typescript 第二部分 (05:27)
5 ^! s9 E6 g' `. d5 x8-9 大功告成 - Storybook 最终样式调整 (05:44)
' P+ h+ I2 D7 P. O8-10 完成的 storybook 的架构,给剩下的组件添加 stories; F) F4 |0 [2 C, s. |# H& ^
) {+ C3 c; I0 M
第9章 进入表单的世界 - Input 组件和 AutoComplete 组件
  N5 m3 y7 Q4 y  U9-1 知己知彼 -Input 组件需求分析 (06:09)
& C( C' F5 x, c9 f$ U" ]+ c& |9-2 抛砖引玉 - Input 组件伪代码实现 (08:48)* `: Q6 ~( ^/ u) H1 [. o
9-3 持续优化 - Input组件代码实现和优化过程 (12:11)
+ c* E+ K2 S3 z7 S  _9-4 新的挑战 - AutoComplete组件分析 (09:29)* w' M6 M! B# ?2 d5 l7 w
9-5 基本骨架 - AutoComplete 编码第一部分 (14:09)! B- S+ e2 l) n0 }" I' ^
9-6 AutoComplete 支持自定义模版 (11:21)
' F' I* V9 r" y6 F- F( m9-7 异步来了 - AutoComplete 支持异步请求编码 (09:42)! B1 p" k/ a' p
9-8 老瓶新酒 - 使用自定义Hook实现 函数防抖 (11:51)8 R2 Y( \. }& J) R' X6 h
9-9 AutoComplete 支持键盘事件 (10:11), h  o7 ^  g( N7 d$ Y
9-10 妙用 useRef - 实现 clickOutSide 功能- (10:57)
, \2 R: L3 L6 ^$ O) Y3 n9-11 完美收尾 - AutoComplete 添加单元测试 (14:08)
) B# b8 g: e) X% [0 q$ f9-12 Select 组件2 }, o8 R$ q- `$ ^2 o1 r

* W- q4 }. M3 e% q第10章 终极任务 - Upload 组件+ T" w! f4 C2 x2 r2 b2 W/ g9 Q
10-1 最终任务 - Upload组件需求分析 (06:22)6 `. L. y# V8 H' _
10-2 下一代 HTTP 库 - axios (05:54)1 W1 g  _% V( ?* L6 z
10-3 在线 mock server 和 axios 简单使用 (09:29)* m5 [$ J3 j) e) G" g  g
10-4 上传文件的基本方式 (09:39)
5 [/ T. \3 ]: ?$ k6 r. B10-5 完成基本流程 - Upload 组件编码第一部分 (13:23)
: `' M2 C( H, h( _& U10-6 完善生命周期 - Upload 组件编码第二部分 (08:00)
. q/ w- K: X5 f' ^+ I10-7 创建列表数据 - UploadList 组件编码第一部分 (13:36), q- F! \/ `- g9 \/ l
10-8 显示上传数据 - UploadList 组件编码第二部分 (11:59)4 ^& M! h) V1 q# \% U
10-9 显示上传进度 - 添加 Progress 组件 (10:29). u- c1 h% b* z8 b
10-10 精益求精 - 再次分析 Upload 组件更近一步需求 (06:33)9 r1 z9 ~# R1 E
10-11 Upload 增强交互第一部分 (08:50)
; C, ]1 U$ J: M/ v: G+ z10-12 拖动上传 - 支持 Drag and Drop (10:05)( `. H. f  c2 {6 j+ |& U( ?
10-13 异步怎样测试? - Upload 测试第一部分 (12:29)
; u* C" H- D2 Z10-14 拖动事件怎样测试? - Upload 测试第二部分 (11:20)
: [0 S2 Y! @) k! ~. V0 i) H. E+ J1 z
; ?: `7 w( U4 a! J& u: ~) M& @第11章 Javascript 模块打包 - 需要什么类型的模块供各种环境使用?
6 k& r" t9 p6 t) S11-1 Javascript模块化发展历史 (07:19)
5 k/ d- B* X6 f11-2 webpack 到底完成什么任务? - bundler的神奇功效 (06:36)2 j+ c7 d$ h6 O1 b2 s
11-3 怎样选择 Javascript 模块格式? (06:38)
1 X) k# J9 C0 a0 I. F( G/ M" A9 \, l11-4 创建组件库模块入口文件 (08:23)+ R1 S( m! R% J0 C, }) J1 _
11-5 驯服tsc - tsconfig 编写第一部分 (08:08)  J: K+ X2 b+ W9 u2 b7 t
11-6 驯服 tsc - tsconfig 编写第二部分 (06:28)
7 w: m# _* ]2 x. Y! y0 Z11-7 生成最终使用的样式文件 (06:09)
0 A+ C8 c* u4 _) r; N11-8 使用 npm link 本地测试组件库 第一部分 (06:28)
& r: O/ v! d; I- b( }. L11-9 使用 npm link 本地测试组件库 第二部分 (05:14); P$ [: T2 U5 P5 h
* B/ x; q; U. A/ D$ b% b+ K
第12章 大功告成 - 发布到 Npm,以及添加 CI/CD 支持4 F. P4 W$ g- \# L: L8 B
12-1 Npm 简介 (05:31); D: N; F& o& u
12-2 发布组件库到 npm (07:37)1 ~: w  j4 v9 P0 d5 W; {
12-3 瘦身任务 - 精简 package.json 依赖 (07:12)
$ `! S7 F5 X" P" M( `12-4 万无一失 - 添加发布和 commit 前检查 (09:17); Q9 b8 }: ?# h$ U' S. X9 u  p, T
12-5 使用 Storybook 生成静态文档页面 (07:40). ^+ u" a2 I- e; \' Y
12-6 CI CD 简介 (04:59)
' B2 {1 c, \& O# ~" Q12-7 使用 travis 自动运行测试 (08:02)
0 Z* ~- ^8 O$ H+ l( B' N12-8 使用 travis 自动发布文档页面 (06:31)( [' S, I. B$ }0 P
9 {3 \7 x- d4 _3 x; j  E' |# r* ^
第13章 课程总结
8 ]) ?9 q+ t& U5 J- u/ M13-1 课程总结 (08:20)
" W* C7 R* [; b; c, L. T0 f9 S" D
- Z" V5 j. g3 J  e+ `* w( T; [/ K' c6 o+ ^* v4 q. s3 _2 Z' H3 e" C
〖下载地址〗  O& t7 C6 P, D9 K1 ^
游客,如果您要查看本帖隐藏内容请回复

. H! j$ N' c4 _% _5 P〖升级为永久会员免金币下载全站资源〗
1 T! e) D) A9 m- x0 q! a( @全站资源高清无密,每天更新,一次充值,永久可查看网站全部资源:http://www.mano100.cn/rjyfk_url-url.html
3 E% Z5 M" b$ j* N. S- k
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则