React+React Hook+Egg 造轮子 全栈开发旅游电商应用
造好轮子+前后端复杂业务处理,解锁前端高手必备技能。
本课程将带你在解锁 React.js 、 React Hook 以及 EggEgg.js 的高阶玩法的同时,完成轮子的构建过程,再用造好的轮子开发一个全栈项目。你将在掌握全栈技能的同时,获取如何拆解复杂业务、如何造好轮子、如何优化性能等诸多“高手”必备的实用技能。
适合人群
符合技术储备要求的
所有前端工程师
技术储备要求
了解React.js基本语法
了解Node.js基本使用更佳
[wm_tips]试看链接:https://pan.baidu.com/s/1jSLnmTVFKqUz3VWYhFSCDg
提取码:r9kw
[/wm_tips]
章节目录:
第1章 关于这门课,你需要知道的 试看1 节 | 12分钟
本章中,将向大家介绍本门课的相关信息,包括你能学到的知识概览、最终项目效果、学习所需的知识储备、课程讲解方式以及推荐的学习方法等等。
收起列表
视频:
1-1 课前须知,这里有你需要了解的一切 (11:20)
试看
第2章 React 核心内容梳理及自定义组件开发【拒绝啰嗦,开场即干货】17 节 | 134分钟
“造轮子”是一个过程,要想造企业级轮子,自然需要更加丰富全面的技术。从本章开始,将带领大家在梳理巩固知识的同时,进行“实用轮子”的开发,为后续实战项目做好准备。本章中,将分别针对React.js的核心知识,以及UmiJs的基础知识,进行梳理,并应用这些知识带领大家完成多款自定义组件(LazyLoad、ErrorBoundary、 Mo…
收起列表
视频:
2-1 本章概览 (04:32)
视频:
2-2 前端开发环境搭建 (04:11)
图文:
2-3 前端开发环境搭建之Window 下安装 nvm
视频:
2-4 UmiJs极速入门(上) (14:11)
视频:
2-5 Umijs极速入门(下) (05:49)
视频:
2-6 react组件生命周期(上) (15:11)
视频:
2-7 react组件生命周期(下) (08:45)
视频:
2-8 react组件之间的通信方式 (08:50)
视频:
2-9 Dva数据处理及数据mock (18:59)
视频:
2-10 基于react context api 实现数据流管理 (13:41)
视频:
2-11 LazyLoad组件开发【基于lazy 与 suspense 实现的懒加载组件】 (11:05)
视频:
2-12 ErrorBoundary组件开发【基于React错误边界技术实现的组件】 (06:09)
视频:
2-13 Modal组件开发【基于createPortal 创建自定义弹窗组件】 (11:52)
视频:
2-14 使用 ref api 来操作dom和组件 (10:03)
图文:
2-15 react 生命周期函数总结
作业:
2-16 【讨论题】大家在面试过程中遇到的 react 面试题
作业:
2-17 【讨论题】谈一谈 react 中的状态管理
第3章 React Hooks 开发模式详解及自定义hook开发 试看8 节 | 69分钟
本章主要针对React hooks进行讲解,介绍了如何应用第三方 think-react-store(基于React context 和 hook实现的实现数据流解决方案) 完成数据流操作,并继续进行我们的”造轮子“之旅,完成了多个自定义hook的开发,这些也都将直接应用在之后的实战项目中,并会结合项目需求逐步优化,变成”好轮子“。…
收起列表
视频:
3-1 react hook api-新的组件开发模式 (16:24)
视频:
3-2 useContext和useReducer实现数据流管理 (10:19)
视频:
3-3 useTitleHook【根据url修改页面title的自定义hook】 (06:44)
视频:
3-4 useHttpHook【基于fetch api 封装具有监测功能的自定义hook】 (11:51)
视频:
3-5 使用think-react-store实现数据处理【基于React context 和 hook的数据流解决方案】 (16:00)
试看
视频:
3-6 Fiber架构解析 (06:54)
图文:
3-7 hooks 组件对应的生命周期
作业:
3-8 【讨论题】说说你对 react hooks得认识
第4章 为什么应用Egg.js6 节 | 48分钟
相较于怎么用?为什么要用?更重要!!本章中会结合Egg.js与Express/Koa2 等其他框架的对比,向大家介绍Egg.js的特点,并会应用Egg.js当中的多进程模式,演示如何在项目当中做渐进式开发。
收起列表
视频:
4-1 Egg.js 企业级开发的利器概述 (07:02)
视频:
4-2 Egg.js 初体验 (08:16)
视频:
4-3 Node.js 中的进程 (16:22)
作业:
4-4 【讨论题】聊聊 Node.js 中的多线程和shell操作
视频:
4-5 Egg.js 中多进程模式- (06:44)
视频:
4-6 超越Express/Koa2,Egg.js中的渐进式开发模式 (08:52)
第5章 Egg.js 基础–路由/控制器/服务/模板引擎等9 节 | 94分钟
工欲善其事,必先利其器。本章中会对Egg.js中常用的知识点进行讲解,包括路由、控制器、服务、模板引擎、缓存、httpClient等,带领大家初探Egg.js的奥妙。
收起列表
视频:
5-1 Egg.js 中 Controller 的使用和单元测试 (11:40)
视频:
5-2 Egg.js 路由中 get 请求的处理方式 (05:53)
视频:
5-3 Egg.js 路由中 post/put/delete等请求的处理及参数校验 (10:52)
视频:
5-4 Egg.js 中 Service 服务和单元测试 (07:05)
视频:
5-5 Egg.js 中使用 Ejs 模版引擎 (14:02)
视频:
5-6 Ejs 模版引擎中静态资源的使用和配置 (07:34)
视频:
5-7 Egg.js 中 Cookie 的配置和使用以及如何设置中文cookie (16:32)
视频:
5-8 Egg.js 中 Session 的配置和使用 (11:41)
视频:
5-9 Egg.js 中使用 HttpClient 请求其他接口 (07:43)
第6章 Egg.js 高阶–插件/中间件/扩展等 试看6 节 | 51分钟
会用,更要能用好!!本章中会结合Egg.js的高阶功能,对框架进行扩展、开发日志中间件及用户验证插件,还会讲解定时任务的应用。真正懂他的人,才能造出”实用的好轮子“。
收起列表
视频:
6-1 中间件,绕不开的洋葱圈模型【实现日志中间件httpLog】 (11:37)
视频:
6-2 丰富的扩展方式,项目开发得心应手【提取公共逻辑,提升开发效率】(上) (11:59)
试看
视频:
6-3 丰富的扩展方式,项目开发得心应手【提取公共逻辑,提升开发效率】(下) (12:18)
视频:
6-4 插件机制, Egg.js 灵活应用【实现用户登录验证插件egg-auth】 (08:43)
视频:
6-5 Egg.js 中的定时任务 (05:25)
作业:
6-6 【讨论题】 Egg.js 、Koa2、express得差异
第7章 Egg.js 操作 Mysql 数据库7 节 | 41分钟
本章中讲解了Mysql的安装、常用的增删改查操作,介绍了如何结合egg-mysql插件完成对数据的基本操作,并讲解了如何应用egg-sequelize插件解决复杂业务需求,为后续实战开启做好”存储准备“。
收起列表
视频:
7-1 安装 Mysql 数据库 (03:11)
视频:
7-2 Mysql 入门,基础增删改查操作 (08:43)
视频:
7-3 使用egg-mysql插件操作数据库 (14:30)
视频:
7-4 Egg.js 中使用 Sequelize 操作 mysql 数据库 (14:04)
图文:
7-5 Sequelize常用数据类型和条件判断
图文:
7-6 Sequelize 常用增删改查函数
图文:
7-7 mysql8无法使用本机ip访问的解决方式
第8章 前端界面开发及功能优化【开战啦~~】22 节 | 303分钟
前期准备ok啦,本章开始我们将正式进入全栈项目的的开发!在这里我们会向大家介绍如何进行前端基础界面的开发、如何基于IntersectionObserver实现列表滚动加载和图片懒加载、如何使用think-react-store做数据流处理,以及如何进行针对性的系统优化策略和实现。满满的干货,一定要认真听课呦!!…
收起列表
视频:
8-1 本章概览 (04:52)
视频:
8-2 实现网站的底部导航功能 (18:08)
视频:
8-3 首页开发 (23:09)
视频:
8-4 为首页添加数据mock(使用useHttpHook请求数据) (06:55)
视频:
8-5 开发搜索页面 (15:19)
视频:
8-6 初识IntersectionObserver,实现useObserverHook (15:09)
视频:
8-7 使用useObserverHook实现滚动加载(上) (13:57)
视频:
8-8 使用useObserverHook实现滚动加载(下) (10:13)
视频:
8-9 使用useImgHook实现图片懒加载 (10:56)
视频:
8-10 优化-提取公共组件,使用枚举,引入project-libs (15:43)
视频:
8-11 民宿详情页面界面开发 (24:03)
视频:
8-12 为民宿详情页面添加数据流管理(上) (18:18)
视频:
8-13 为民宿详情页面添加数据流管理(下) (23:44)
视频:
8-14 开发订单页面 (12:13)
视频:
8-15 为订单页面添加滚动加载效果(使用useObserverHook,但不监听数据) (15:45)
视频:
8-16 开发我的页面(使用rc-form处理表单数据) (18:49)
视频:
8-17 为我的页面添加数据管理 (13:00)
视频:
8-18 开发用户登录和注册页面 (16:09)
视频:
8-19 通过 umi 运行时配置,对页面进行登陆验证 (12:21)
视频:
8-20 优化-使用 React.memo 减少渲染次数 (06:10)
视频:
8-21 优化-订单页面添加骨架屏 (07:21)
作业:
8-22 【讨论题】聊聊 H5 的 Observer API
第9章 服务端用户模块实现及优化13 节 | 98分钟
本章将使用前面完成的Egg.js框架的扩展、中间件和插件来编写用户模块,并在完成基础功能的前提下对系统进行优化,如使用JWT技术做用户验证、改造egg-auth插件、将用户登录信息存入redis、编写公共控制器和服务等。
收起列表
视频:
9-1 本章概览 (02:53)
视频:
9-2 创用户表,建基于 Sequelize 编写用户模型 (07:46)
视频:
9-3 开发用户注册接口 (10:04)
视频:
9-4 扩展Egg.js的帮助函数 (04:31)
视频:
9-5 开发用户登陆接口 (05:55)
视频:
9-6 什么是 JWT 技术? (02:44)
视频:
9-7 使用 JWT 改造注册和登陆接口,并联调登录注册接口 (11:16)
视频:
9-8 开发用户详情接口和用户退出登录接口 (11:50)
视频:
9-9 优化用户登录验证插件 (05:17)
视频:
9-10 redis 的简单使用,将用户基础信息存储在 redis 中 (10:38)
图文:
9-11 Redis 常用的五种数据类型
视频:
9-12 将公共逻辑写在BaseController和BaseService里面,并开发新的中间件 (15:31)
视频:
9-13 编写用户编辑接口,并与前端进行联调 (09:12)
第10章 服务端民宿&订购模块实现及优化11 节 | 116分钟
继续征程,本章将学习Sequelize里面的多表联查、属性过滤等高级操作,完成民宿&订购两个模块的编写,实现民宿列表、详情、评论以及支付、订单列表等接口,并完成与前端的联调。
收起列表
视频:
10-1 创建民宿、评论表以及编写 Sequelize 模型 (17:45)
视频:
10-2 开发egg-notFound 插件,处理接口不存在问题 (09:54)
视频:
10-3 获取城市列表数据,基于Sequelize多表联查编写热门民宿接口 (14:21)
视频:
10-4 编写搜索民宿接口,与前端联调 (08:02)
视频:
10-5 编写民宿详情接口,与前端联调 (06:52)
视频:
10-6 编写添加评论和评论列表接口,与前端联调 (11:56)
视频:
10-7 创建订单表,基于 Sequelize 编写订单模型 (05:59)
视频:
10-8 编写预定和取消预定民宿接口,与前端联调 (20:25)
视频:
10-9 编写订单列表接口,与前端联调 (09:02)
视频:
10-10 Egg.js 模拟支付过程,与前端联调 (06:40)
视频:
10-11 优化用户信息获取方式,对egg框架进行扩展 (04:24)
第11章 项目安全【安全问题不能松懈】5 节 | 30分钟
基础功能完成了,这就完了?NONONO!!!本章将进一步,对XSS、CSRF、接口缓存等系统的安全问题进行分析,并提出一些解决思路。
收起列表
视频:
11-1 XSS 常见攻击方式与解决思路 (09:00)
视频:
11-2 CSRF 常见攻击方式与解决思路(开发egg-allowHosts插件) (08:51)
视频:
11-3 如何对接口限流,避免无限制请求(开发egg-interfaceLimit插件) (05:40)
视频:
11-4 接口缓存问题处理(开发egg-interfaceCache插件) (06:00)
作业:
11-5 【讨论题】聊聊项目的安全性问题
第12章 项目部署【靠不靠谱,用过才知道】8 节 | 49分钟
本章中讲解了如何在阿里云环境下基于Docker进行项目的发布,让我们的项目脱离本地,真正跑起来。
收起列表
视频:
12-1 Docker简介 (04:23)
视频:
12-2 Docker基础入门 (11:59)
视频:
12-3 阿里云后台介绍 (04:42)
视频:
12-4 项目部署 (19:28)
图文:
12-5 Docker操作说明
图文:
12-6 Docker安装mysql后,node连接报错解决方式
图文:
12-7 Dockerfile常用指令介绍
视频:
12-8 课程总结 (08:02)
本课程已完结