用 React.js+Egg.js 造轮子 全栈开发旅游电商应用完整无密

#1

用 React.js+Egg.js 造轮子 全栈开发旅游电商应用

用 React.js+Egg.js 造轮子 全栈开发旅游电商应用
能造好轮子,是对技术深度理解+灵活应用能力的表现;全栈开发,是全局性思维+综合解决能力的代名词。如果,你既能造好用的轮子,又能进行全栈开发,那绝对是企业“急需”的“高薪”人才。 本课程将带你在解锁 React.js 和 Egg.js 的高阶玩法的同时,完成轮子的构建过程,再用造好的轮子开发一个全栈项目。你将在掌握全栈技能的同时,获取如何拆解复杂业务、如何造好轮子、如何优化性能等诸多“高手”必备的实用技能。

适合人群

符合技术储备要求的

所有前端工程师

技术储备要求

了解React.js基本语法

了解Node.js基本使用更佳

章节目录:

第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 课程总结

本课程已完结