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