Vue3 + TS + Egg.js + Nuxt3 开发复杂真实高质量商业项目,前端/后端/运维/管理系统一课打通

*   第1章 课程简介/

  *   1-1 课程导学.mp4 12:30

*   第2章 课程设计—需求分析和架构设计:做什么,如何做?/

  *   2-1 需求分析-了解软件开发生命周期.mp4 05:39

  *   2-2 宏观需求分析.mp4 08:01

  *   2-3 技术整体架构 - 几个项目,项目的关系.mp4 08:57

  *   2-4 技术整体架构 - 核心内容分析.mp4 11:16

*   第3章 B端项目需求分析 和 架构设计/

  *   3-1 章简介.mp4 05:22

  *   3-2 引子:突破瓶颈,前端破局之路.mp4 13:42

  *   3-3 需求分析.mp4 13:59

  *   3-4 项目难点分析.mp4 12:25

  *   3-5 组件库难点解决方案.mp4 11:55

  *   3-6 编辑器难点解析一.mp4 09:47

  *   3-7 编辑器难点解析二.mp4 14:36

  *   3-8 技术选型 - typescript.mp4 09:23

  *   3-9 技术选型 - vue 和 react.mp4 11:03

  *   3-10 总体架构.mp4 08:15

*   第4章 前端基础技术回顾和巡礼/

  *   4-1 什么是 Typescript 为什么要学习它.mp4 09:52

  *   4-2 安装 Typescript.mp4 06:06

  *   4-3 原始数据类型和 Any 类型.mp4 06:07

  *   4-4 数组和元组.mp4 06:55

  *   4-5 Interface- 接口 初探.mp4 05:40

  *   4-6 函数.mp4 07:37

  *   4-7 类型推论 联合类型和 类型断言.mp4 07:48

  *   4-8 枚举(Enum).mp4 07:41

  *   4-9 泛型(Generics) 第一部分.mp4 07:46

  *   4-10 泛型(Generics) 第二部分 - 约束泛型.mp4 07:06

  *   4-11 新泛型第三部分 - 泛型在类和接口中的使用.mp4 11:16

  *   4-12 类型别名,字面量 和 交叉类型.mp4 07:11

  *   4-13 声明文件 第一部分.mp4 13:34

  *   4-14 声明文件 第二部分.mp4 10:43

  *   4-15 内置类型.mp4 08:36

  *   4-16 Vue3 学习导学.mp4 02:48

  *   4-17 使用 vite 创建项目.mp4 07:43

  *   4-18 文件结构以及推荐插件.mp4 13:04

  *   4-19 ESLint 简介和初步使用.mp4 11:12

  *   4-20 ESLint 配合 Vite 设置更多规则.mp4 12:45

  *   4-21 响应式基础 - Ref 和 Reactive.mp4 13:08

  *   4-22 computed 计算属性.mp4 08:30

  *   4-23 watch 监听器.mp4 13:41

  *   4-24 生命周期和模版引用.mp4 11:40

  *   4-25 组件基础-属性.mp4 15:02

  *   4-26 组件自定义事件.mp4 08:57

  *   4-27 组合式函数.mp4 10:52

  *   4-28 创建 useURLLoader.mp4 14:41

  *   4-29 useURLLoader 第二部分.mp4 08:52

  *   4-30 setup语法第一部分.mp4 05:40

  *   4-31 setup 语法第二部分.mp4 10:15

  *   4-32 依赖注入第一部分.mp4 11:17

  *   4-33 依赖注入第二部分.mp4 11:18

  *   4-34 Vue3.3 更新简介.mp4 11:38

*   第5章 项目整体搭建/

  *   5-1 本章导学.mp4 05:12

  *   5-2 大话前端工具链.mp4 12:04

  *   5-3 使用 Imooc CLI 创建项目.mp4 09:06

  *   5-4 小花絮:Vue CLI 对战 Vite.mp4 08:28

  *   5-5 使用 ESLint 添加代码规范.mp4 07:16

  *   5-6 深入 ESLint 配置文件.mp4 08:45

  *   5-7 小花絮:使用 Prettier 自动格式化代码.mp4 09:09

  *   5-8 项目结构规范.mp4 07:53

  *   5-9 了解 Git Flow 标准.mp4 10:30

  *   5-10 安装 ant-design-vue 组件库.mp4 08:24

  *   5-11 使用 ant-design-vue 搭建页面框架.mp4 09:32

  *   5-12 SPA 路由的基本原理.mp4 09:41

  *   5-13 添加配置 Vue Router.mp4 08:28

  *   5-14 使用 Vue Router 钩子函数获取路由信息和跳转.mp4 09:45

  *   5-15 (打点区间内字小) 使用 Vue Router 元数据和嵌套路由解决不同模版结构.mp4 09:11

  *   5-16 什么是状态管理工具.mp4 10:23

  *   5-17 Vuex 安装和基础使用.mp4 07:48

  *   5-18 Vuex 结合整个应用.mp4 08:56

  *   5-19 Vuex 添加 mutations 和 getters.mp4 08:56

  *   5-20 使用 Module 分割 Vuex 模块.mp4 08:29

  *   5-21 第九周总结.mp4 05:53

*   第6章 编辑器基本布局,及业务组件库初步开发/

  *   6-1 本章导学.mp4 05:10

  *   6-2 将编辑器数据结构添加至 vuex store.mp4 08:01

  *   6-3 LText 组件初步实现.mp4 10:37

  *   6-4 LText 添加通用属性.mp4 10:00

  *   6-5 LText 使用 hooks 重用逻辑.mp4 08:05

  *   6-6 完成点击模版列表添加到画布的行为.mp4 10:33

  *   6-7 为业务组件属性添加类型的利弊.mp4 06:19

  *   6-8 获取正在编辑的元素的属性.mp4 12:19

  *   6-9 添加属性和表单的基础对应关系并展示.mp4 15:18

  *   6-10 添加更多简单对应关系并展示.mp4 08:38

  *   6-11 添加更多复杂对应关系并展示.mp4 09:34

  *   6-12 分析展示和编辑属性的“金科玉律.mp4 06:27

  *   6-13 添加编辑表单并更新界面 第一部分.mp4 10:30

  *   6-14 添加编辑表单并更新界面 第二部分.mp4 08:20

  *   6-15 提出优化需求,以及组件返回的真相.mp4 07:49

  *   6-16 将文本转换为 vNode.mp4 05:35

  *   6-17 方案一:使用 JSX 重写 PropsTable 组件.mp4 09:55

  *   6-18 方案二:使用 render 函数实现桥梁.mp4 06:42

  *   6-19 本周重点内容回顾和总结.mp4 07:09

*   第7章 掌握测试基本工具,给组件库添加单元测试/

  *   7-1 本章导学.mp4 03:28

  *   7-2 为什么要有测试.mp4 08:06

  *   7-3 Jest 简介.mp4 07:53

  *   7-4 Jest 实现异步测试.mp4 07:38

  *   7-5 Jest mock 函数测试.mp4 08:08

  *   7-6 Jest mock 第三方模块实现.mp4 08:33

  *   7-7 Jest mock Timers.mp4 07:09

  *   7-8 配置测试开发环境.mp4 08:36

  *   7-9 测试组件:渲染和元素获取.mp4 09:38

  *   7-10 测试组件:触发事件,更新表单,验证事件.mp4 11:08

  *   7-11 测试组件:异步请求.mp4 10:08

  *   7-12 测试通用准备和清理.mp4 06:55

  *   7-13 测试中 mock 全局组件的实现.mp4 09:48

  *   7-14 模拟第三方库实现的三种”药方“ - 第一部分.mp4 09:48

  *   7-15 模拟第三方库实现的三种”药方“ - 第二部分.mp4 07:08

  *   7-16 单独测试 Vuex store.mp4 10:17

  *   7-17 什么是 TDD 的开发方式.mp4 06:14

  *   7-18 TDD 第一步:编写测试用例.mp4 10:30

  *   7-19 TDD 第二布:编写代码实现.mp4 09:52

  *   7-20 TDD 第三步:和应用整合.mp4 05:59

  *   7-21 第十一周重点内容回顾和总结.mp4 08:07

*   第8章 通用上传组件开发以及使用/

  *   8-1 本章导学.mp4 04:26

  *   8-2 上传组件需求分析(加片头).mp4 07:32

  *   8-3 架构师课程图片上传测试服务

  *   8-4 上传文件的原理.mp4 10:41

  *   8-5 万事开头难 - 编码基本流程.mp4 08:12

  *   8-6 上传基本流程的测试编写.mp4 10:47

  *   8-7 编写上传文件列表功能的测试用例.mp4 10:02

  *   8-8 根据测试实现上传文件列表功能.mp4 13:38

  *   8-9 编写自定义模版功能的测试用例.mp4 09:12

  *   8-10 根据测试完成自定义模版功能.mp4 07:05

  *   8-11 测试驱动开发 - 完成上传前检查的特性.mp4 13:28

  *   8-12 中期回顾完成情况和新的需求.mp4 07:22

  *   8-13 新的开发方式:添加拖动上传编码.mp4 11:19

  *   8-14 添加拖动上传测试.mp4 10:49

  *   8-15 Vue3 世界中的三种实例.mp4 08:50

  *   8-16 Vue3 中组件通信的四种方法.mp4 12:10

  *   8-17 Element Plus Upload 组件源码分析第一部分.mp4 10:02

  *   8-18 Element Plus Upload 组件源码分析第二部分.mp4 08:18

  *   8-19 本地图片预览的两种方式.mp4 09:39

  *   8-20 Jest 浏览器环境之谜.mp4 07:22

  *   8-21 将上传组件添加到左侧组件列表.mp4 08:56

  *   8-22 上传图片后将图片组件添加到编辑器.mp4 06:57

  *   8-23 扩展知识:Element 类型家族之间的关系.mp4 09:00

  *   8-24 通过 Image 构造函数获取图片的原始大小.mp4 10:12

  *   8-25 章总结.mp4 06:55

*   第9章 业务组件库打包、发布,添加 CI/CD/

  *   9-1 本章导学.mp4 04:37

  *   9-2 Javascript 模块化历史.mp4 08:28

  *   9-3 打包工具的根本作用.mp4 06:23

  *   9-4 Webpack 对阵 Rollup.mp4 09:36

  *   9-5 打包什么类型的模块.mp4 07:50

  *   9-6 花絮 - Snowpack 另类打包工具 简介.mp4 10:21

  *   9-7 创建组件库基本代码结构.mp4 05:52

  *   9-8 Vue 插件系统简介.mp4 07:57

  *   9-9 创建入口文件.mp4 06:32

  *   9-10 Rollup 配置文件和插件.mp4 06:13

  *   9-11 添加 Vue Plugin.mp4 08:52

  *   9-12 添加 Typescript Plugin.mp4 11:56

  *   9-13 尝试打包入口文件.mp4 11:10

  *   9-14 生成两种格式的模块文件.mp4 08:11

  *   9-15 使用 npm link 本地测试组件库.mp4 10:42

  *   9-16 分析 Element Plus 的打包过程.mp4 09:57

  *   9-17 扩展知识 - Rollup 插件开发的简单原理.mp4 12:40

  *   9-18 npm 简介和 package.json 的设置.mp4 07:39

  *   9-19 使用 npm publish 发布业务组件库.mp4 07:57

  *   9-20 给业务组件库添加测试用例.mp4 13:24

  *   9-21 发布或者提交前检查代码质量和测试结果.mp4 08:58

  *   9-22 什么是 CI CD?.mp4 07:53

  *   9-23 初步配置 travis 完成 CI.mp4 08:36

  *   9-24 进一步配置 travis 完成 CD - 自动发布到 npm.mp4 11:14

  *   9-25 总结.mp4 05:43

*   第10章 后端技术选型以及基础知识巩固(上)/

  *   10-1 14周导学.mp4 05:21

  *   10-2 接口分析.mp4 09:37

  *   10-3 后端接口设计文档.mp4 08:39

  *   10-4 技术选型 express 分析.mp4 09:46

  *   10-5 了解 express 中间件.mp4 07:58

  *   10-6 调研 koa2 以及它的基本特点.mp4 09:01

  *   10-7 koa2 中间件机制.mp4 09:35

  *   10-8 后端框架选择 egg.js.mp4 09:54

  *   10-9 egg.js 项目结构.mp4 06:52

  *   10-10 Controller 第一部分:设置响应.mp4 08:03

  *   10-11 Controller 第二部分:获取 Request 的参数.mp4 09:52

  *   10-12 Postman安装以及使用.mp4 07:36

  *   10-13 Service 发送 HTTP 请求获取信息.mp4 08:48

  *   10-14 Plugin 插件的初次接触.mp4 09:58

  *   10-15 Middleware 中间件第一部分.mp4 08:41

  *   10-16 Middleware 中间件第二部分.mp4 09:07

  *   10-17 Config 配置文件第一部.mp4 11:37

  *   10-18 Config 配置文件第二部分.mp4 08:12

  *   10-19 Extend 扩展 第一部分.mp4 07:50

  *   10-20 Extend 扩展 第二部分.mp4 10:51

  *   10-21 启动自定义.mp4 12:52

  *   10-22 egg typescript 支持的原理.mp4 10:31

  *   10-23 eggjs 调试技巧.mp4 10:14

  *   10-24 eggjs 日志的概念以及分类.mp4 08:11

  *   10-25 非关系数据库 对阵 关系型数据库.mp4 08:14

  *   10-26 mongoDB 安装第一部分:下载运行.mp4 07:48

  *   10-27 mongoDB 安装第二部分:添加到全局命令.mp4 07:09

*   第11章 后端技术选型以及基础知识巩固(下)/

  *   11-1 mongod 使用配置文件.mp4 08:14

  *   11-2 mongo shell简介及使用.mp4 08:02

  *   11-3 mongoDB GUI 软件推荐使用.mp4 06:54

  *   11-4 nodejs 连接 mongodb 数据库.mp4 08:01

  *   11-5 插入和简单查询.mp4 09:59

  *   11-6 mongoDB 查询操作符.mp4 11:05

  *   11-7 mongoDB 整体结果的处理.mp4 07:49

  *   11-8 更新文档第一部分.mp4 09:07

  *   11-9 更新文档第二部分:更新数组内容.mp4 09:04

  *   11-10 按照数组内容查询并更新.mp4 06:59

  *   11-11 mongoDB Nodejs 语法小节.mp4 10:39

  *   11-12 mongoDB 索引的定义和测试.mp4 09:45

  *   11-13 mongoDB 索引管理.mp4 09:00

  *   11-14 mongoDB 不同集合的数据关系.mp4 07:24

  *   11-15 聚合的概念和基本用法.mp4 11:26

  *   11-16 使用$lookup 完成多集合查询.mp4 08:21

  *   11-17 MongoDB数据库设计原则以及最佳实践.mp4 08:40

  *   11-18 完成应用数据库设计.mp4 11:10

  *   11-19 什么是 mongoose 以及 ORM ODM 的概念.mp4 06:46

  *   11-20 mongoose 基本语法.mp4 11:47

  *   11-21 egg.js 结合 mongoose.mp4 14:03

  *   11-22 将 models 自动加载到 app 对象.mp4 12:35

  *   11-23 将逻辑抽象编写为 egg 插件.mp4 10:41

  *   11-24 egg-mongoose 源代码解读.mp4 13:16

  *   11-25 章总结.mp4 06:27

*   第12章 用户系统设计与实现/

  *   12-1 本章导学.mp4 05:27

  *   12-2 定义 UserModel.mp4 08:36

  *   12-3 实现创建用户的最基本功能.mp4 11:57

  *   12-4 改进 Model 的ts 类型支持.mp4 10:28

  *   12-5 使用 egg-validate 验证参数.mp4 11:13

  *   12-6 规范化错误信息和错误码.mp4 10:31

  *   12-7 加密选择方案简介.mp4 08:37

  *   12-8 将 bcrypt 添加到应用并完成密码加密和登录解密.mp4 14:32

  *   12-9 使用 toJSON 和 transform 处理文档结果.mp4 07:00

  *   12-10 使用 mongoose-sequence 插件完成 ID 自增.mp4 08:42

  *   12-11 Cookie基础知识回顾以及加深.mp4 11:13

  *   12-12 使用 egg.js 设置对应的 Cookie.mp4 09:22

  *   12-13 使用 egg-session 实现用户验证功能.mp4 09:16

  *   12-14 koa session 源代码分析第一部分.mp4 12:59

  *   12-15 koa session 源代码分析第二部分.mp4 08:33

  *   12-16 egg session 使用外部存储器.mp4 09:03

  *   12-17 总结 egg-session 的优缺点.mp4 08:35

  *   12-18 简介JWT以及优缺点.mp4 09:09

  *   12-19 使用 JWT 完成登录验证工作.mp4 14:23

  *   12-20 使用中间件实现 JWT token 验证.mp4 09:26

  *   12-21 使用 egg-jwt 插件以及它内部的原理.mp4 13:27

  *   12-22 手机验证码登录基本流程分析.mp4 08:03

  *   12-23 手动编译安装 redis.mp4 07:32

  *   12-24 使用 redis-cli 进行基本操作.mp4 08:48

  *   12-25 学习使用 ioredis 进行 redis 操作.mp4 11:23

  *   12-26 发送验证码过程编码.mp4 16:17

  *   12-27 完成手机登录编码.mp4 11:17

  *   12-28 短信云服务调研.mp4 08:33

  *   12-29 使用阿里云发送短信.mp4 14:22

  *   12-30 使用 .env 文件保存敏感信息.mp4 10:12

  *   12-31 介绍 Oauth2的概念和基本流程.mp4 10:09

  *   12-32 实现Oauth 编码第一部分:获取 access token.mp4 12:03

  *   12-33 实现 Oauth 编码第二部分:创建用户.mp4 16:45

  *   12-34 前后端分离实现 oauth 登录的思路.mp4 07:41

  *   12-35 实现前后端分离的 oatuh 登录功能.mp4 06:19

  *   12-36 使用 CORS 支持跨域.mp4 13:39

  *   12-37 创建Work Model.mp4 08:07

  *   12-38 创建作品过程编码.mp4 12:13

  *   12-39 装饰器的概念.mp4 05:43

  *   12-40 装饰器基础知识学习.mp4 09:07

  *   12-41 确定查询条件的类型.mp4 10:31

  *   12-42 编写更新以及删除的接口.mp4 12:57

  *   12-43 编写验证权限装饰器以及发布作品接口.mp4 14:22

  *   12-44 章总结.mp4 06:39

*   第13章 文件上传与处理 , SSR 实现 H5 端展示以及权限控制/

  *   13-1 本章导学.mp4 04:57

  *   13-2 文件上传的原理再次分析.mp4 08:31

  *   13-3 File 模式上传并且支持服务器直接访问.mp4 11:53

  *   13-4 图片处理库 Sharp 简介.mp4 06:16

  *   13-5 使用 sharp 生成缩略图并保存.mp4 11:08

  *   13-6 流的基本概念和举例.mp4 08:39

  *   13-7 Stream 的基本特性编码.mp4 11:17

  *   13-8 使用 stream 模式完成图片上传以及缩略图生成.mp4 11:25

  *   13-9 高级知识:使用 pipeline替换pipe方法.mp4 09:46

  *   13-10 对象存储调研报告.mp4 08:27

  *   13-11 配置阿里云 oss.mp4 10:36

  *   13-12 上传单文件到阿里云 OSS.mp4 09:16

  *   13-13 学习底层库 Busboy 的用法.mp4 13:35

  *   13-14 使用 co-busboy 完成多文件上传的需求.mp4 12:42

  *   13-15 egg-mutilpart 源代码解析.mp4 12:46

  *   13-16 限制上传图片大小以及格式.mp4 14:45

  *   13-17 重构 Router:添加 Prefix 和简单的权限验证.mp4 08:48

  *   13-18 简介 SSR 的概念和特点.mp4 10:01

  *   13-19 学习 vue SSR 的基本用法.mp4 08:02

  *   13-20 使用 lego-components 渲染对应的H5 页面.mp4 12:01

  *   13-21 添加 body 样式.mp4 07:58

  *   13-22 px 转换成 vw.mp4 11:32

  *   13-23 使用 webpack 的解决对应的引用第三方库的问题.mp4 05:42

  *   13-24 配置 webpack 生成对应的结果.mp4 13:13

  *   13-25 拷贝和清理 webpack 生成的文件.mp4 09:13

  *   13-26 上传生成的静态文件到 OSS.mp4 11:50

  *   13-27 完成 webpack 结合上传文件到 OSS 的功能.mp4 08:26

  *   13-28 创建展示渠道.mp4 10:08

  *   13-29 渠道的更新以及删除.mp4 10:45

  *   13-30 RBAC概念简介以及选择 Node.js 第三方库.mp4 08:24

  *   13-31 CASL 初步学习.mp4 09:11

  *   13-32 CASL 学习第二部分- 添加角色.mp4 08:51

  *   13-33 CASL学习第三部分 - 管理属性权限.mp4 10:20

  *   13-34 添加对应的角色模型.mp4 09:55

  *   13-35 添加角色判断到装饰器第一部分:基本验证.mp4 12:31

  *   13-36 添加角色判断到装饰器第二部分:验证字段.mp4 10:30

  *   13-37 添加角色判断到装饰器第三部分:自定义 action.mp4 11:43

  *   13-38 添加角色判断到装饰器第四部分:自定义 query.mp4 11:48

  *   13-39 第十六周总结.mp4 08:09

*   第14章 使用 Docker 完成部署以及 Github Actions 完成 CI/CD/

  *   14-1 导学.mp4 06:00

  *   14-2 本地环境和生产环境的异同.mp4 08:20

  *   14-3 Node.js Cluster 模式.mp4 10:41

  *   14-4 Node.js Cluster 压力测试对比结果.mp4 11:09

  *   14-5 Cluster 进程间的通信.mp4 08:29

  *   14-6 Egg.js 启动的不同进程的分类以及特点.mp4 10:20

  *   14-7 云服务器设置以及登录最佳实践.mp4 12:10

  *   14-8 使用 SSH key 进行免密码登录.mp4 07:09

  *   14-9 linux 安装必备软件.mp4 11:19

  *   14-10 修改生产环境的配置.mp4 09:32

  *   14-11 在服务器部署并且运行.mp4 07:53

  *   14-12 本章总结以及提出问题.mp4 06:10

  *   14-13 Docker 简介以及安装.mp4 06:24

  *   14-14 docker images 镜像操作.mp4 06:24

  *   14-15 Docker 容器的基本概念.mp4 08:37

  *   14-16 Docker 容器持久化数据.mp4 10:27

  *   14-17 使用 Dockerfile 构建镜像.mp4 08:46

  *   14-18 使用 Dockerfile 构建并且运行 lego-backend.mp4 08:44

  *   14-19 Docker 多个容器互相通信.mp4 09:57

  *   14-20 使用 docker-compose 启动服务.mp4 11:04

  *   14-21 mongoDB 设置访问权限.mp4 09:06

  *   14-22 mongoDB 权限验证第二部分.mp4 07:45

  *   14-23 Docker 初始化 MongoDB 数据库操作.mp4 14:21

  *   14-24 使用.env 保存 docker 中的敏感信息.mp4 11:22

  *   14-25 向 docker-compose 添加 redis 服务并测试.mp4 11:20

  *   14-26 Docker Build 优化镜像大小.mp4 06:14

  *   14-27 Docker Build 提高构建速度.mp4 07:23

  *   14-28 在服务器上运行对应的 docker 容器.mp4 09:55

  *   14-29 重学 YAML 语法.mp4 06:48

  *   14-30 Github Actions 简介和初步使用.mp4 13:25

  *   14-31 学习 Github Actions 的进阶知识.mp4 07:51

  *   14-32 学习使用 Github Secrets.mp4 09:24

  *   14-33 优化线上部署流程分析.mp4 07:10

  *   14-34 推送镜像到阿里云ACR 并测试.mp4 07:44

  *   14-35 使用 Github Actions Build 和 Push 镜像到 ACR.mp4 12:34

  *   14-36 自动部署应用到服务器 第一部分.mp4 11:15

  *   14-37 自动部署应用到服务器 第二部分.mp4 10:30

  *   14-38 在 actions 中获取提交的基本信息.mp4 13:10

  *   14-39 整合流程,完成自动部署以及回滚.mp4 11:00

  *   14-40 使用 release-it 精简发布流程.mp4 11:34

  *   14-41 总结.mp4 07:55

*   第15章 编辑器组件图层面板功能开发/

  *   15-1 前言.mp4 05:30

  *   15-2 知识回顾.mp4 11:57

  *   15-3 选择 CropperJS 作为图片裁剪库.mp4 06:03

  *   15-4 初始化 Cropper 区域.mp4 10:56

  *   15-5 使用阿里云 OSS 完成图片裁剪功能.mp4 13:42

  *   15-6 使用 Cropper.js 获取裁剪图片数据.mp4 08:44

  *   15-7 方法二:完成裁剪后重新上传图片.mp4 06:41

  *   15-8 分析图层设置的需求和实现.mp4 06:38

  *   15-9 图层列表设置锁定和隐藏.mp4 15:07

  *   15-10 InlineEdit 书写测试用例以及初步功能开发.mp4 13:40

  *   15-11 添加键盘响应钩子函数.mp4 09:45

  *   15-12 添加 useClickOutside.mp4 10:06

  *   15-13 在界面上测试并且改进 InlineEdit 组件.mp4 09:32

  *   15-14 拖动排序列表的需求分析.mp4 05:21

  *   15-15 拖拽排序第一部分 添加拖动事件.mp4 11:21

  *   15-16 拖拽排序第二部分 添加 drop 时排序.mp4 11:38

  *   15-17 拖动排序第三部分 在拖动时完成排序.mp4 09:03

  *   15-18 使用 Vue Draggable Next 完成排序.mp4 10:14

  *   15-19 EditGroup 需求分析.mp4 06:31

  *   15-20 EditGroup 编码第一部分.mp4 12:35

  *   15-21 EditGroup 编码第二部分:数据转换成界面.mp4 09:39

  *   15-22 页面设置编码第一部分.mp4 07:04

  *   15-23 BackgroundProcesser 组件编码第一部分.mp4 09:39

  *   15-24 使用正则获取文件名称.mp4 08:51

  *   15-25 页面设置完成更新背景图片逻辑.mp4 10:37

  *   15-26 总结.mp4 06:01

*   第16章 让元素动起来 - 编辑器画布交互功能开发/

  *   16-1 十九周导学.mp4 04:38

  *   16-2 拖动移动元素的原理分析.mp4 07:25

  *   16-3 拖动移动元素第一部分:计算偏移量.mp4 09:51

  *   16-4 拖动移动第二部分: 实现元素移动.mp4 11:00

  *   16-5 拖动移动第三部分: 更新元素属性.mp4 06:52

  *   16-6 拖动改变大小的原理.mp4 07:55

  *   16-7 拖动改变大小 第一部分: 实现右下方拖拽大小.mp4 11:52

  *   16-8 拖拽改变大小 编码第二部分: 实现四个角拖拽大小.mp4 12:41

  *   16-9 拖动改变大小 编码第三部分:发射事件 更新属性.mp4 09:58

  *   16-10 快捷键需求分析.mp4 07:09

  *   16-11 快捷键编码第一部分:创建 useHotKeys.mp4 07:33

  *   16-12 快捷键编码第二部分:添加 muations 完成操作.mp4 10:39

  *   16-13 快捷键编码第三部分:添加移动元素的快捷键.mp4 10:27

  *   16-14 快捷键编码第四部分:添加高级函数阻止默认行为.mp4 09:03

  *   16-15 尽善尽美 补充新的 mutations 的测试.mp4 10:11

  *   16-16 撤销重做需求分析.mp4 07:31

  *   16-17 撤销重做编码第一部分:添加历史记录.mp4 08:50

  *   16-18 撤销重做编码第二部分:根据不同情况添加处理.mp4 12:11

  *   16-19 撤销重做编码第三部分:根据当前情况添加测试.mp4 10:16

  *   16-20 中期界面测试以及发现需要改进的点.mp4 11:09

  *   16-21 进阶:撤销重做支持一次处理多个数据.mp4 09:54

  *   16-22 进阶:撤销重做支持一次处理多个数据 第二部分.mp4 06:53

  *   16-23 进阶:撤销重做支持函数防抖.mp4 10:15

  *   16-24 进阶:撤销重做支持最大历史条目数.mp4 08:54

  *   16-25 撤销重做小结以及剩下的改进.mp4 08:24

  *   16-26 右键菜单需求分析.mp4 04:24

  *   16-27 右键菜单编码第一部分:添加右键菜单组件.mp4 10:31

  *   16-28 右键菜单第二部分:函数式的创建组件.mp4 08:30

  *   16-29 右键菜单第三部分:插件化右键菜单.mp4 09:08

  *   16-30 右键菜单 第四部分:删除组件实例的方法.mp4 06:56

  *   16-31 总结.mp4 06:49

*   第17章 前后端结合 - 编辑器整合后端接口/

  *   17-1 章导学.mp4 05:35

  *   17-2 前后端分离开发简介.mp4 09:29

  *   17-3 分析后端接口和需求.mp4 09:44

  *   17-4 使用 vuex action 发送请求.mp4 11:53

  *   17-5 JSON server 的简介和安装使用.mp4 06:43

  *   17-6 JSON server 自定义接口URL 和 返回数据结构.mp4 09:17

  *   17-7 JSON Server 实现 JWT 验证 - 生成 token.mp4 09:58

  *   17-8 JSON Server 实现 JWT 验证 - 实现路由保护.mp4 06:33

  *   17-9 使用 AForm 完成表单验证.mp4 11:20

  *   17-10 使用 AForm 完成提交时验证的两种方法.mp4 07:12

  *   17-11 完成获取验证码的功能.mp4 08:04

  *   17-12 完成用户登陆过程.mp4 12:26

  *   17-13 使用高阶函数 actionWrapper 包装 action 通用逻辑.mp4 10:09

  *   17-14 AForm 源代码解析 :Form 组件 和 FormItem 完成验证.mp4 11:57

  *   17-15 AForm 源代码解析 :使用 useForm 完成验证.mp4 07:52

  *   17-16 添加全局读取状态 - 整体通用读取状态.mp4 09:40

  *   17-17 添加全局读取状态 - 细粒度读取状态.mp4 08:33

  *   17-18 处理全局错误处理.mp4 09:40

  *   17-19 将全局读取和错误添加至根组件.mp4 08:24

  *   17-20 登陆状态持久化.mp4 10:07

  *   17-21 路由权限验证 第一部分 - 功能分析.mp4 06:48

  *   17-22 路由权限验证 第二部分 - 编码实现.mp4 11:28

  *   17-23 编辑器获取作品 第一部分 - 发送并且改进 action.mp4 12:58

  *   17-24 编辑器获取作品 第二部分 - 根据数据渲染至画布.mp4 08:36

  *   17-25 添加编辑器 Header.mp4 06:59

  *   17-26 保存作品数据.mp4 08:18

  *   17-27 添加自动保存功能.mp4 09:02

  *   17-28 跳转路由前提示保存.mp4 06:10

  *   17-29 提取和整合保存作品逻辑.mp4 06:09

  *   17-30 总结.mp4 06:35

*   第18章 整合开发 B 端其他页面的各种功能/

  *   18-1 发布作品需求分析.mp4 08:11

  *   18-2 前后端分离开发简介.mp4 09:29

  *   18-3 html2canvas 获取截图.mp4 08:56

  *   18-4 html2canvas 踩坑修正 bug.mp4 10:01

  *   18-5 完成截图并且上传文件.mp4 13:30

  *   18-6 html2canvas的基本原理.mp4 05:33

  *   18-7 html2canvas 原理简单编码实现.mp4 06:55

  *   18-8 完成发布流程.mp4 07:50

  *   18-9 发布后创建渠道.mp4 10:52

  *   18-10 添加 usePublishWork.mp4 08:23

  *   18-11 创建和删除渠道.mp4 14:45

  *   18-12 使用 qrcode 将渠道链接生成二维码.mp4 10:09

  *   18-13 watch 数组的陷阱:新添加的渠道生成二维码.mp4 10:03

  *   18-14 使用Clipboard.js 实现内容的拷贝.mp4 08:11

  *   18-15 拷贝文本的原理.mp4 07:29

  *   18-16 完成copyToClipBoard编码.mp4 07:04

  *   18-17 PreviewForm 预览组件第一部分.mp4 06:55

  *   18-18 PreviewForm 预览组件第二部分.mp4 10:43

  *   18-19 剩余页面需求分析.mp4 07:57

  *   18-20 useLoadMore 编码第一部分:改造 actionWrapper 支持 queryParams.mp4 11:08

  *   18-21 useLoadMore 编码第二部分:实现基本功能.mp4 09:02

  *   18-22 useLoadMore编码第三部分 - 页面实践以及支持无限滚动加载.mp4 10:49

  *   18-23 useLoadMore编码第四部分 - 创建我的作品页以及发现新的问题.mp4 09:17

  *   18-24 useLoadMore 编码第五部分 - 数据驱动界面,改造成分页组件.mp4 10:03

  *   18-25 下载图片原理编码第一部分.mp4 08:25

  *   18-26 下载文件原理编码第二部分.mp4 08:57

*   第19章 整大型项目的编译,部署以及性能优化/

  *   19-1 前言.mp4 04:46

  *   19-2 开发,预生产,生产环境的概念.mp4 09:06

  *   19-3 使用 vue cli 生成生产环境代码.mp4 08:59

  *   19-4 Vue CLI 中模式的概念以及简单使用.mp4 08:10

  *   19-5 使用环境变量文件 第一部分.mp4 07:50

  *   19-6 环境变量设置第二部分 创建预发布环境变量文件.mp4 08:11

  *   19-7 Webpack 基本概念回顾.mp4 12:52

  *   19-8 动手写一个 Webpack Loader 第一部分.mp4 07:58

  *   19-9 动手写一个 Webpack Loader 第二部分.mp4 09:48

  *   19-10 动手写一个 Webpack plugins 第一部分.mp4 08:26

  *   19-11 动手写一个 Webpack plugins 第二部分.mp4 08:03

  *   19-12 vue.config.js 简介.mp4 11:47

  *   19-13 安装 webpack-bundle-analyzer 插件.mp4 08:55

  *   19-14 webpack 打包优化第一部分:移除不需要的第三方库.mp4 09:14

  *   19-15 webpack 打包优化第二部分:按需加载 ant-design-vue.mp4 09:25

  *   19-16 webpack 打包优化第三部分:分析第三方库继续优化的方案.mp4 08:31

  *   19-17 手动分割第三方库成多个文件.mp4 10:47

  *   19-18 按照模块大小自动分割第三方库.mp4 07:29

  *   19-19 实现路由懒加载.mp4 09:59

  *   19-20 使用 chainWebpack 修改 webpack 已有配置.mp4 08:20

  *   19-21 部署的概念.mp4 07:22

  *   19-22 nginx 安装和简单配置.mp4 09:07

  *   19-23 HTTP 缓存设置第一部分:Expires 和 Cache-Control.mp4 09:35

  *   19-24 HTTP 缓存设置第二部分:Etag 和 Last-Modified.mp4 07:13

  *   19-25 使用 gzip 压缩对应的 HTTP 请求资源.mp4 07:05

  *   19-26 使用 Brotli 完成 HTTP 压缩优化.mp4 07:31

  *   19-27 直接生成压缩静态文件并配置 nginx 的 gzip_static 支持.mp4 09:40

  *   19-28 使用 keep-alive 减少多次 TCP 连接.mp4 08:18

  *   19-29 使用 HTTP2 大幅提升加载速度.mp4 08:37

  *   19-30 周总结.mp4 06:09

*   第20章 学习使用 Nuxt.js 创建管理系统:基础知识/

  *   20-1 Nuxt3导学.mp4 04:09

  *   20-2 Nuxt简介.mp4 07:05

  *   20-3 Nuxt 中的渲染模式.mp4 12:45

  *   20-4 Nuxt3 安装.mp4 06:36

  *   20-5 自动导入.mp4 12:09

  *   20-6 Pages 概念.mp4 08:51

  *   20-7 Routing 路由 以及中间件第一部分.mp4 10:20

  *   20-8 中间件第二部分.mp4 09:46

  *   20-9 状态管理 第一部分.mp4 11:06

  *   20-10 状态管理第二部分.mp4 09:28

  *   20-11 数据获取第一部分.mp4 16:44

  *   20-12 数据获取第二部分.mp4 13:46

  *   20-13 数据获取第三部分.mp4 08:13

  *   20-14 静态文件处理.mp4 07:31

  *   20-15 SEO.mp4 11:44

  *   20-16 总结.mp4 08:41

  *   20-17 Nuxt server 简介.mp4 06:31

  *   20-18 Nuxt server 基础知识.mp4 11:19

  *   20-19 服务器端中间件第一部分.mp4 10:44

  *   20-20 服务器端中间件第二部分.mp4 09:29

  *   20-21 存储层第一部分.mp4 08:47

  *   20-22 存储层 第二部分.mp4 07:32

  *   20-23 配置文件以及环境变量.mp4 09:35

  *   20-24 Nitro plugins.mp4 11:37

  *   20-25 Nuxt Plugins.mp4 10:47

  *   20-26 安装 nuxt-mongoose 模块.mp4 08:49

  *   20-27 使用 nuxt-mongoose 完成对应的编码.mp4 07:08

  *   20-28 总结.mp4 09:00

*   第21章 学习使用 Nuxt.js 创建管理系统:进阶实战/

  *   21-1 安装 tailwind.css.mp4 10:40

  *   21-2 Tailwind 规则演示.mp4 14:02

  *   21-3 使用 Layouts 创造两种布局.mp4 05:50

  *   21-4 安装并且使用 zod.mp4 12:09

  *   21-5 Zod 完成客户端验证.mp4 12:11

  *   21-6 使用 Zod 添加服务器端验证.mp4 11:15

  *   21-7 添加 VeeValidate 第一部分.mp4 11:44

  *   21-8 添加 VeeValidate 第二部分.mp4 13:57

  *   21-9 添加 VeeValidate 第三部分 完成登陆页面.mp4 13:07

  *   21-10 知识巩固:完成注册页面.mp4 09:41

  *   21-11 完成注册以及登陆的后端功能.mp4 16:29

  *   21-12 使用 jwt 实现用户验证 后端编码.mp4 18:17

  *   21-13 前端添加用户验证.mp4 07:47

  *   21-14 完成前端登陆状态持久化.mp4 11:08

  *   21-15 总结.mp4 10:15

  *   21-16 简介和安装 NuxtUI.mp4 06:34

  *   21-17 编写 Header 样式.mp4 13:19

  *   21-18 完成剩余布局.mp4 08:44

  *   21-19 Table 编码第一部分 展示数据.mp4 10:45

  *   21-20 表格编码第二部分 实现分页功能.mp4 11:33

  *   21-21 表格编码第三部分 完成排序功能.mp4 14:13

  *   21-22 表格编码第四部分 查找功能.mp4 15:37

  *   21-23 表格编码第五部分 自定义功能.mp4 14:26

*   第22章 学习使用 Nuxt.js 创建管理系统:最后一部分/

  *   22-1 编辑创建页面需求分析.mp4 06:56

  *   22-2 完成动态表单初步编码.mp4 16:45

  *   22-3 表单编码第二部分:添加联动关系.mp4 15:11

  *   22-4 上传组件第一步 - 创建上传组件.mp4 13:50

  *   22-5 上传组件第二部分-服务器端获取文件数据.mp4 13:55

  *   22-6 上传图片第三部分-使用阿里云完成上传.mp4 11:46

  *   22-7 上传组件第四部分 - 使用插件.mp4 07:52

  *   22-8 完成数据创建显示自定义错误.mp4 20:23

  *   22-9 完成创建后的收尾工作.mp4 14:52

  *   22-10 编辑用户信息第一部分.mp4 12:34

  *   22-11 编辑用户信息 第二部分.mp4 11:23

  *   22-12 编辑用户编码第三部分.mp4 10:36

  *   22-13 构建和部署的方式.mp4 06:25

  *   22-14 使用Nuxt构建整个项目.mp4 10:17

  *   22-15 完成部署脚本.mp4 10:34

  *   22-16 使用 pm2 来启动和管理应用.mp4 12:00

  *   22-17 扩展内容:使用 Bun 来运行应用.mp4 08:26