Nestjs仿小米商城企业级Nodejs RBAC项目实战视频教程,本教程更新于2022年2月10日,兼容最新的Nestjs v8.2.0,教程中涉及的所有源码都可以直接运行。

课程目录:

Nest.js视频教程已更新目录介绍:

 

01  Nestjs介绍  环境搭建、创建 运行Nestjs项目、分析Nest架构(17分48秒)

1、NestJS介绍
2、NestJS和Egg.js的一些简单对比
3、学习NestJS必备基础
4、NestJS环境搭建 、创建运行NestJS项目
5、NestJS目录结构介绍、以及执行流程

 

02  Nestjs中的控制器、路由、Get、Post、方法参数装饰器(29分52秒)

1、NestJS中的控制器   
2、NestJS中的路由   
3、NestJS中的Get Post以及通过方法参数装饰器获取传值   
4、NestJS中的动态路由

 

03  Nestjs中视图(Views)使用模板引擎、配置静态资源、Post以及路由跳转(24分57秒)
1、NestJS中配置静态资源   
2、NestJS中配置模板引擎   
3、NestJS中模板引擎结合Post演示、以及路由跳转

 

04  Nestjs中的服务(Model)(13分22秒)

1、关于NestJS中的服务
2、NestJS中创建和使用服务

 

05  Nestjs中的Cookie 以及Cookie加密(18分44秒)

1、Cookie简介
2、Cookie特点
3、Nestjs中使用Cookie
4、Cookie中的一些参数
5、加密Cookie

 

06  Nestjs中的Session(11分50秒)

1、Session简单介绍
2、Session的工作流程
3、Nestjs中express-session的使用
4、Express-session的常用参数
5、Express-session的常用方法

 

07  Nestjs文件上传、单个文件上传 多个文件上传(27分20秒)

1、Nestjs file-upload官方文档
2、单个文件上传
3、多文件上传
4、注意事项

  

08  Nestjs中间件(23分46秒)

1、关于Nextjs中间件
2、Nestjs中创建使用中间件
3、多个中间件
4、函数式中间件
5、全局中间件

 

09  Nestjs管道(20分55秒)

1、关于Nestjs中的管道
2、Nestjs中创建和使用管道
3、Nestjs中管道结合Joi库实现数据验证

  

10  Nestjs模块(模块 服务 控制器)综合使用(31分21秒)

1、关于Nestjs中的模块
2、Nestjs中创建模块
3、Nestjs中的共享模块

 

11  Nestjs守卫 以及基于session的权限判断(23分17秒)

1、关于Nestjs中的守卫
2、Nestjs中使用守卫、以及控制器中单独配置守卫
3、Nestjs中使用守卫、以及全局配置守卫
4、在Nestjs的守卫中获取Cookie和Session
5、在模块中配置守卫

 

12 【Mongodb进阶】Mongodb4.x的使用、mongodb开启权限验证、 mongodb超级管理员 、mongodb用户权限管理【拓展】(26分23秒)

1、Mongodb4.x的使用   
2、Mongodb账户权限配置   
3、Mongodb账户权限配置中常用的命令   
4、Mongodb数据库角色   
5、连接数据库的时候需要配置账户密码

 

13 【Mongodb进阶】关系型数据库表(集合)与表(集合)之间的几种关系(理论-新手必看 13分10秒)

1、简述关系数据库中表与表的3种关系   
2、一对一的关系   
3、一对多的关系   
4、多对多的关系

  

14 【Mongodb进阶】 MongoDB的高级查询 、MongoDB多表关联查询、aggregate聚合管道 $project 、$match 、$group、$sort、$limit、$skip、$lookup 表关联 [难度4个星](35分24秒)

1、MongoDB 聚合管道(Aggregation Pipeline)   
2、MongoDB Aggregation 管道操作符与表达式   
3、数据模拟   
4、$project   
5、$match   
6、$group   
7、$sort   
8、$limit   
9、$skip   
10、$lookup 表关联

 

15 【Mongoose】mongoose入门以及mongoose实现数据的增、删、改、查( 一 )(33分21秒)

1、Mongoose介绍   
2、Mongoose的安装以及使用
3、Mongoose模块化

 

16 【Mongoose】mongoose默认参数 、mongoose模块化、mongoose性能疑问(二)(25分35秒)

1、Mongoose默认参数   
2、Mongoose 模块化
3、Mongoose 性能疑问

 

17 【Mongoose】Mongoose 预定义模式修饰符  Getters与 Setters修饰符(三)(29分43秒)

1、Mongoose 预定义模式修饰符
2、Mongoose  Getters
3、Mongoose Setters

 

18 【Mongoose】Mongoose索引、Mongoose内置方法、扩展Mongoose Model的静态方法和实例方法(四)(17分17秒)

1、Mongoose索引
2、Mongoose内置方法
3、扩展Mongoose Model的静态方法和实例方法

 

19 【Mongoose】Mongoose 数据校验(五)(18分39秒)

1、Mongoose内置校验参数
2、Mongoose自定义校验器

 

20 【Mongoose】Mongoose两个表关联查询aggregate  以及Mongoose中获取ObjectId(六)(25分31秒)

21 【Mongoose】Mongoose多表(N个表)关联查询aggregate (七) (25分43秒)

22 【Mongoose】 DBRef  Populate 实现多个表的关联查询(八)(11分33秒)

23  Nestjs中使用 Mongoose 操作Mongodb数据库(30分36秒)(上)

1、安装nestjs/mongoose 以及mongoose模块
2、配置数据库连接地址
3、配置Schema
4、在控制器对应的Module中配置Model
5、在服务里面使用InjectModel 获取数据库Model实现操作数据库

 

24  Nestjs中的【接口】以及结合Mongoose实现数据库的曾 删 改 查(下)(21分50秒)

1、Mongoose官方文档
2、实现Nav集合的增删改查

 

25 Nestjs中使用TypeORM 操作Mysql数据库(16分42秒)(上)

1、关于TypeORM
2、安装TypeORM 操作Mysql模块
3、配置数据库连接地址
4、配置实体entity
5、在控制器对应的Module中配置Model
6、在服务里面使用@InjectRepository获取数据库Model实现操作数据库

 

26  Nestjs中的接口(Interface)以及结合TypeORM 实现Mysql数据库的增 删 改 查(下)(32分11秒)

1、关于TypeORM
2、安装TypeORM 操作Mysql模块
3、配置数据库连接地址
4、配置实体entity
5、在控制器对应的Module中配置Model
6、在服务里面使用@InjectRepository获取数据库Model实现操作数据库
7、TypeORM操作mysql数据库实现增删改查

  

27  Nestjs仿小米商城项目(前端、后端、Api)功能介绍(7分42秒)

1、仿小米商城项目功能介绍
2、数据库ER图 (部分ER图)

 

28  Nestjs仿小米项目架构搭建、配置模块、路由、服务、控制器、模板引擎、静态资源、Session、Cookie等(21分24秒)

1、仿小米商城项目架构介绍
2、配置静态web目录、模板引擎、Cookie、Session
3、创建项目目录以及生成模块控制器
4、配置模板引擎

  

29  Nestjs仿小米项目 渲染静态页面、views模板分组、views模板分离、后台管理系统局部刷新架构(27分24秒)
1、仿小米商城项目架构介绍
2、后台管理系统局部刷新架构

  

30  Nestjs仿小米商城项目创建tools.ts服务、显示登录验随机证码、获取用户登录信息、配置中间件、权限判断(27分41秒)

1、Nestjs仿小米商城项目创建tools.ts 服务
2、生成验证码
3、配置中间件 权限判断

 

31  Nestjs仿小米商城配置Mongoose、实现登录、退出登录功能(32分14秒)(上)

1、Nestjs仿小米商城配置Mongoose
2、Md5模块的使用   
3、登录功能
4、退出功能
5、涉及的管理员数据库表

 

32  Nestjs 实现登录、退出登录功能、配置公共的成功 失败提示页面(16分24秒)(下)

1、登录功能
2、退出功能
3、涉及的管理员数据库表
4、配置公共的成功失败提示页面

 

33  Nestjs 配置inti中间件、配置模板全局变量、配置可修改的后台地址、扩展模板方法(27分19秒)

1、配置模板全局变量
2、配置可修改的后台地址
3、Nestjs扩展模板方法

 

34  Nestjs仿小米商城项目 RBAC权限管理功能演示  RBAC实现流程  以及RBAC数据库ER图介绍(8分10秒)

1、RBAC权限管理功能演示
2、RBAC实现流程
3、用户RBAC权限管理树形图
4、权限控制相关的数据库表

 

35  NestJS仿小米商城项目 RBAC权限管理 - 角色列表、增加 修改 删除角色(42分11秒)

36  NestJS仿小米商城项目 RBAC权限管理、封装模板中格式化日期方法、实现管理员的增删改查以及用户角色关联(31分56秒)(上)

37  NestJS仿小米商城项目 RBAC权限管理、实现管理员的增删改查以及用户角色关联(21分58秒)(下)

38 NestJS仿小米商城项目 RBAC权限管理 -权限列表 权限增加  mongodb权限表和权限表aggregate自关联(37分44秒)(上)

39  Nestjs仿小米商城项目 RBAC权限管理 -权限修改 权限删除(16分30秒)(下)

40  Nestjs仿小米商城项目 RBAC权限管理-角色和权限关联 角色授权(32分51秒)(上)

41  Nestjs仿小米商城项目 RBAC权限管理-角色和权限关联 角色授权(11分13秒)(下)

42  Nestjs仿小米商城项目 RBAC权限管理-判断当前登录用户的权限 、没有权限访问则拒绝(36分47秒)

43  Nestjs仿小米商城项目 RBAC权限管理-根据当前登录账户角色的权限动态显示左侧菜单(23分10秒)

44  Nestjs仿小米商城项目 封装上传图片方法  封装方法按照日期存储图片(29分26秒)

1、封装按照日期生成目录存储图片的方法

2、封装上传图片的方法

3、实现图片上传

 

45  Nestjs仿小米商城项目  实现轮播图的增加修改删除(33分23秒)

46  Nestjs仿小米商城项目 实现公共的ajax异步修改状态  以及异步修改数量(上)(26分45秒)

1、实现ajax异步修改轮播图状态

2、封装公共的ajax异步修改状态方法

 

47  Nestjs仿小米商城项目  实现公共的ajax异步修改状态  以及异步修改数量(下)(19分52秒)

1、单击数字把数字变成文本框

2、封装公共的异步修改数量的方法

 

48  Nestjs仿小米商城项目商品模块  商品分类 商品属性 商品参数功能介绍以及数据表ER图关系分析(20分47秒)

49  Nestjs仿小米商城项目 商品类型的增加修改删除(28分30秒)

50  Nestjs仿小米商城项目 商品类型属性的增加修改删除,并实现商品类型和商品类型对应属性的关联(33分29秒)(上)

51  Nestjs仿小米商城项目 商品类型属性的增加修改删除,并实现商品类型和商品类型对应属性的关联(26分50秒)(下)

52  NestJs仿小米商城项目 商品分类的增删改查(31分20秒)(上)

53  NestJs仿小米商城项目 商品分类的增删改查 以及商品分类的自关联(29分17秒)(下)

54  NestJs仿小米商城项目 借助jimp模块封装公共截取图片的方法(18分)

55  NestJs 仿小米商城项目 商品的增删改查-配置Schema、接口、服务、以及实现增加商品页面布局(1)(24分39秒)

56  NestJs 仿小米商城项目 商品的增删改查 富文本编辑器 wysiwyg-editor的使用(2)

1、wysiwyg-editor介绍

2、Nodejs 中使用wysiwyg-editor

3、Nestjs中汉化wysiwyg-editor

4、Nestjs中自定义wysiwyg-editor 的导航条

5、Nestjs中配置wysiwyg-editor上传图片方法 

 

57 NestJs 仿小米商城项目 商品的增删改查 富文本编辑器 wysiwyg-editor的使用 以及配置图片上传地址(3)

 

58  NestJs 仿小米商城项目 商品的增删改查 增加商品页面选择分类、颜色、关联商品类型(4)(25分10秒)

1、增加商品页面获取商品二级分类

2、增加商品页面关联商品颜色

3、增加商品页面关联商品类型

 

59  NestJs 仿小米商城项目 商品的增删改查 关联商品类型 动态生成商品类型属性表单(5)(26分5秒)

1、监听商品类型改变事件 

2、异步动态获取商品类型属性

3、根据商品类型属性动态生成 input textarea select表单

 

60  NestJs 仿小米商城项目 配置批量上传图片插件  以及后台获取提交的数据(21分23秒)

1、批量上传图库插件介绍 

2、实现异步批量上传图片 

3、根据返回的地址生成隐藏表单

 

61  NestJs 仿小米商城项目 商品的增删改查  增加商品数据、增加商品图库、增加商品规格信息(7)(44分50秒)

 

62  Nestjs 仿小米商城项目 商品的增删改查  显示商品数据 编辑商品数据(8)(47分1秒)

  

63  Nestjs 仿小米商城项目 商品的增删改查 解决上一讲遗留的几个小bug、编辑商品数据 执行修改商品数据 (9)(30分37秒)


64  Nestjs 仿小米商城项目 商品的增删改查-图库商品异步关联颜色、异步删除图库图片数据(10)(23分42秒)

1、图库商品异步关联颜色 

2、异步删除图库图片数据

 

65  Nestjs仿小米商城项目 删除商品 以及Mongoose结合 jqPaginator实现商品列表的分页(11)(30分52秒)

1、删除商品 以及商品关联数据 

2、数据分页原理

3、封装分页方法

4、Mongoose结合 jqPaginator实现商品列表的分页

 

66  Nestjs 仿小米商城项目 修改商品后返回到以前分页的页面 以及商品列表页面实现搜索商品(12)(28分33秒)

1、获取上一页地址 

2、编辑后返回以前分页的地址

3、实现商品搜索以及搜索结合分页

 

67  Nestjs仿小米商城项目 导航模块的增删改查 以及导航和商品的关联 以及导航的分页(33分37秒)

1、导航模块的增删改查

2、导航分页

3、导航修改删除成功后返回到上一页

 

68  Nestjs仿小米商城项目商店设置--FileFieldsInterceptor配置上传多个图片(25分26秒)

1、Nestjs仿小米商城项目商店设置

2、FileFieldsInterceptor配置上传多个图片

 

69  Nestjs仿小米商城项目 商城前台制作 定义控制器  渲染静态页面 以及模板分离(17分39秒)

1、仿小米PC端功能介绍

2、定义前台控制器 渲染静态页面

3、前台公共顶部 底部分离

 

70  Nestjs 仿小米商城项目 配置公共模块 让后台、前台、Api接口共用模块来操作数据库(17分46秒)

1、公共模块介绍

2、配置操作数据库的公共模块 

3、前台  后台  api接口共用公共模块

 

71  Nestjs 仿小米商城项目 首页顶部导航 、首页轮播图、首页左侧分类数据渲染、以及数据显示顺序(24分30秒)

1、首页顶部导航数据渲染

2、首页轮播图数据渲染、轮播图排序 

3、首页左侧分类数据渲染

 

72  Nestjs 仿小米商城项目 首页中间导航以及中间导航关联商品数据渲-mongoose $in的使用(28分45秒)

1、首页中间导航数据渲染

2、中间导航关联商品数据渲染

3、mongoose 中 使用$in

 

73  Nestjs 仿小米商城项目 首页楼层数据渲染 以及封装根据分类获取商品的公共方法(30分39秒)

1、根据一级分类获取子分类里面的商品数据

1、封装方法传入顶级分类获取子分类里面推荐商品数据

 

74  Nestjs仿小米商城项目  把缩略图的尺寸信息配置到配置文件  以及在helper.js封装获取指定缩略图的方法(28分32秒)

1、把缩略图的尺寸信息配置到配置文件

2、helper.js中封装获取指定缩略图的方法

3、修改上传图片的方法 把上传图片方法改为 Promise异步方法

 

75 【Nodejs+Redis】Redis 基本介绍 (windows linux)中安装redis 以及nodejs中使用redis(35分24秒)

1、Redis的简单介绍

2、windows中安装配置使用Redis

3、Nodejs中使用Redis

4、Linux(Centos7)中安装配置使用Redis

 

76 【Nodejs+Redis】Redis 基本使用 Redis(字符串、列表、集合、哈希)类型、Redis数据库的增删改查(上)(21分46秒)

1、Redis 数据库的使用

2、Redis数据库的增删改查

 

77 【Nodejs+Redis】Redis 基本使用 Redis(字符串、列表、集合、哈希)类型、Redis数据库的增删改查、Redis 发布订阅(下)(28分40秒)

1、 Redis的类型

2、 Redis字符串

3、 Redis列表

4、 Redis集合

5、 Redis哈希

6、 Redis订阅发布

 

78 【Nest+Redis】 Nestjs中使用redis 以及封装公共的操作redis方法(25分37秒)

1、Redis基本语法

2、Nestjs中使用redis

3、Nestjs中封装操作redis方法

 

79 【Nest+Redis】 Nestjs仿小米商城项目中使用Redis解决高并发(11分56秒)

1、使用Redis缓存首页数据

2、Redis 性能测试

 

80  Nestjs 公共数据(系统设置、公共导航、公共nav)分离到中间件里面、以及在其他页面调用左侧弹出分类(21分37秒)

81   Nestjs 仿小米商城项目 商品列表数据渲染、商品列表分页 、以及自定义商品列表模板、清除缓存(35分32秒)

1、修改分类跳转地址

2、清除redis缓存

3、商品列表数据渲染 、以及自定义商品列表模板

82   Nestjs 仿小米商城项目 把Redis模块封装到公共模块、清除redis缓存、修改商品服务增加排序字段、渲染商品详情数据(16分16秒)

83   Nestjs仿小米商城项目 商品详情数据渲染、选择版本、选择颜色、规格参数、关联赠品、关联图片...数据渲染(35分45秒)

84  Nestjs仿小米商城项目 商品详情 选择颜色 以及选择颜色切换商品图片(23分52秒)

85  Nestjs仿小米商城项目 使用showdown模块来解析商品规格参数中使用Markdown语法(15分27秒)

86  Nestjs仿小米商城项目  定义公共的Cookie服务  商品加入购物车功能(36分40秒)

87  Nestjs仿小米商城项目 显示购物车列表  Ajax异步增加减少购物车数量(33分4秒)

88  Nestjs checkbox改变购物车商品的选中状态 以及删除购物车数据(20分1秒)

89  Nodejs Nestjs中实现发送短信(17分56秒)

90  Nestjs仿小米商城项目 注册流程、注册涉及的页面、数据库表 、生成随机数、封装日期方法 (1)(16分12秒)

91  Nestjs仿小米商城项目 注册流程 发送验证码 防止短信轰  验证当前IP以及手机号发送验证码的次数(2)(25分18秒)

92  Nestjs仿小米商城项目注册 倒计时 发送验证码  验证验证码(3)(24分18秒)

93  Nestjs仿小米商城项目注册 输入密码完成注册 完成注册后实现登录(4)(19分20秒)

94  Nestjs仿小米商城项目用户登录、退出登录、以及登录时候涉及的一些安全问题(26分35秒)

95  Nestjs仿小米商城项目 定义公共中间件判断用户是否登录 登录成功后返回到指定页面 去结算页面制作(25分39秒)

96  Nestjs仿小米商城项目 去结算页面收货地址的增加 修改 显示(上)(32分30秒)

97  Nestjs仿小米商城项目 去结算页面收货地址的增加 修改 显示(下)(26分30秒)

98  Nestjs仿小米商城项目 提交订单  防止订单重复提交(上)(27分2秒)

99 Nestjs仿小米商城项目 提交订单 判断收货地址  防止订单重复提交 去支付页面制作(下)(18分9秒)

 

 

100【支付宝支付】支付支付之前的准备工作-创建支付宝应用  配置签名 提交审核(11分34秒) 

一、支付宝支付之前的准备工作

二、支付宝签名工具签名

三、配置签名提交审核

四、获取应用私钥、 应用公钥 、支付宝公钥、 以及应用id

 

101【支付宝支付】Nestjs中实现支付宝支付、以及异步更新订单功能(23分) 

一、Nestjs 支付宝支付实现步

二、Nestjs 中实现支付宝支付

三、Nestjs 中接收 post 的 XML 数据异步更新订单 

 

102【微信支付】微信支付准备工作 申请商户平台账户以及配置Api秘钥 

一、微信支付之前的准备工作

二、注册商户平台、申请微信支付

三、登录商户平台  开通Native支付

四、用微信给你发的商户号登陆对应的微信商户平台,获取API密钥

   

103【微信支付】 Nestjs Express中调用统一下单接口生成支付链接、以及通过支付链接生成支付二维码完成支付

一、Express 、Nestjs中调用微信统一下单接口生成支付链接 

二、Nestjs调用二维码生成工具把支付链接code_url转化成二维码

三、Nestjs 中接收post的XML数据 处理微信异步post的数据异步更新订单

 

104  Nestjs仿小米商城项目 用户中心制作以及订单列表数据渲染  订单列表分页(30分52秒)

105  Nestjs仿小米商城项目 订单列表页面显示订单状态 以及筛选订单 搜索订单  聚合管道aggregate结合模糊查询搜索(20分32秒)

106  Nestjs仿小米商城项目 订单详情页面数据渲染 以及后台订单管理功能实现逻辑(12分16秒)

 

 

107【Elasticsearch全文搜索引擎】Elasticsearch全文搜索引擎的使用、安装elasticsearch全文搜索引擎、配置中文分词插件(13分38)

一、全文搜索引擎ElasticSearch的介绍,以及安装配置前的准备工作

二、在Windows下面下载并启动ElasticSearch

三、ElasticSearch中安装配置中文分词工具 安装配置中文分词工具

 

108【Elasticsearch全文搜索引擎】Elasticsearch全文搜索引擎的使用 、基本概念 索引 类型 映射 文档 分片 副本 、创建索引 、修改映射、 增加 修改 删除 全文搜索查询数据(26分11秒)

一、全文搜索引擎ElasticSearch中的一些概念概念 索引 类型 映射 文档 分片 副本等

二、安装浏览器插件ElasticSearch 通过RestFull APi操作ElasticSearch数据库

三、通过浏览器插件创建索引 、修改映射、 增加 修改 删除 全文搜索查询数据

 

109【Elasticsearch全文搜索引擎】Elasticsearch全文搜索引擎 可视化工具Kibana的使用(11分29秒)

110【Elasticsearch全文搜索引擎】Nestjs中使用Elasticsearch全文搜索引擎来实现全文搜索(31分27秒) 

111【RESTful API】Nestjs仿小米商城项目为单页面应用Vue Angualr提供api接口  RESTful API 设计指南 (get post put delete)实现前后端分离(20分41秒)

112【RESTful API】Nodejs(Koa、Express、Nestjs)+前端框架(Vue、React、Angular、Jq)解决Ajax Cookie Session跨域问题-Access-Control-Allow-Credentials(9分55秒)

113【Graphql】NestJs中配置使用Graphql(24分8秒)

114【Graphql】NestJs仿小米商城项目中配置使用Graphql(24分8秒)

115【QQ 登录】Nodejs Express Koa Nest中实现QQ登录(15分22秒)

116【微信登录】Nodejs Express Koa Nest中实现微信登录(14分18秒)

 

 

[送]Socket.io拓展教程目录:

01  原生nodejs结合Socket.io实现服务器和客户端的相互通信

02  Express结合Socket.io实现服务器和客户端的相互通信、 群聊  、机器人原理

03  Express结合Socket.io 跨域实现聊天  以及Socket.io结合数据库实现智能机器人

04  Express Socket.io 实现聊天室

05  Express+Socket.io多房间聊天以及 同一桌点餐用户之间同步信息

06 Koa中使用Socket.io实现 机器人 聊天室 多房间聊天室