7日成为JS全栈-day1,认识midway

公羊嘉
2023-12-01

midway进步手册 干货版,贼干

本教程旨在学习nodejs后台搭建,走出舒适圈,由前端向后端走向全栈之路。

适用于对express\koa,已经有一定了解的对象

学习方案:拆解开源项目cool-admin-midway
学习目标:搭建一个青春版完整项目
deadLine: 搭建好的项目 应用到商业实践中。
学习目录:
一个后台服务的启动,首先要考虑几个点:
  1. mvc模式 
    
  2. nodeJs,必须要考虑中间件
    
  3. 异常处理
    
  4. 路由和路由守卫
    
  5. 定时任务,任务队列,数据库,缓存 
    
  6. ... 暂还没想到
    

    mvc模式:
    很多前端(主要是我自己), 用习惯了vue之后,mvvm模式已经成为了直觉,于是mvc就变的非常反直觉。

这里用大白话解释:
model: 数据库模型,表结构
view: 增删改查什么的
controller : 接口,负责出入

那么很显然,一个标准的后台服务(指前后端分离)的流程是:

  1. 前端发起请求
  2. controller 收到请求 ,并通过一堆中间件
  3. 请求被service受理, 根据model访问数据库进行 增删查改的操作
  4. service操作完成后,返回到controller
  5. controller 把结果返回给前端
    注意这只是一个简单的示例

假设已经明白了一个请求是怎么被处理的,那么说回midwayJS
一句话解释框架之间的关系**:node是地基 koa是建筑结构 midway是毛坯 cool 是精装修直接领包入住 **

直接睡地基也不是不能睡,只是很麻烦,直接睡钢筋混凝土不是不能睡,就是不太舒服。睡个毛坯也是可以的,就是毛坯呢和一个称之为家的地方差距有点大,那么就使用cooljs 精装修 带上你的行李(业务)领包入驻

OK,现在我们已经拿捏了cooljs的命门了,接下来我们用midway来搭建一个项目,看看最终能不能搭建一个青春版的cool

:midway

打开[midway官网](https://beta.midwayjs.org/docs/intro),发现有介绍 , 有教程 。
所以midwayJs是个balabala...

好的,接下来创建一个新项目
npm init midway -- --type=koa-v3 my_midWayjsLearning

注: 其实有它 npm init midway  就行了 但我搞的时候忘记了,默认是什么版本了,这里是手动指定了koa的版本

于是就会出现一堆选项:
选择这个快速开始: quick-start - A midway quickstart exmaple for v3
然后就开始downLoad
最后你就能看到一个template , 目录;

  1. logs : 日志文件夹
    
  2. src : 主文件夹
    
  3.  src.config : 配置文件
    
  4.  src.controller: 控制器文件夹
    
  5.  src.error:错误类集合
    
  6.  src.filer: 可以理解为异常处理的service文件夹
    
  7.  src.middleware : 中间件,自带一个写log的中间件
    
  8.  src.mock: mock函数,不做解释
    
  9.  src.service: 主要服务处理的集合文件夹
    
  10. src.configuration.ts :配置文件 // Midway 容器生命周期类,使用 @Configuration 装饰器修饰
    
  11. src.interface.ts: 接口集合不做解释
    
  12. test/controller: 自动化测试 集合
  13. view:前端视图
  14. bootstrap.js : 入口文件
  15. jest.config.js 文件是用于配置 Jest 测试框架的文件
  16. .prettierrc.js 文件是用于配置 Prettier 格式化工具的文件,它可以指定代码风格和格式化规则。
 类似资料: