本教程旨在学习nodejs后台搭建,走出舒适圈,由前端向后端走向全栈之路。
适用于对express\koa,已经有一定了解的对象
学习方案:拆解开源项目cool-admin-midway
学习目标:搭建一个青春版完整项目
deadLine: 搭建好的项目 应用到商业实践中。
一个后台服务的启动,首先要考虑几个点:
mvc模式
nodeJs,必须要考虑中间件
异常处理
路由和路由守卫
定时任务,任务队列,数据库,缓存
... 暂还没想到
mvc模式:
很多前端(主要是我自己), 用习惯了vue之后,mvvm模式已经成为了直觉,于是mvc就变的非常反直觉。
这里用大白话解释:
model: 数据库模型,表结构
view: 增删改查什么的
controller : 接口,负责出入
那么很显然,一个标准的后台服务(指前后端分离)的流程是:
假设已经明白了一个请求是怎么被处理的,那么说回midwayJS
一句话解释框架之间的关系**:node是地基 koa是建筑结构 midway是毛坯 cool 是精装修直接领包入住 **
直接睡地基也不是不能睡,只是很麻烦,直接睡钢筋混凝土不是不能睡,就是不太舒服。睡个毛坯也是可以的,就是毛坯呢和一个称之为家的地方差距有点大,那么就使用cooljs 精装修 带上你的行李(业务)领包入驻
OK,现在我们已经拿捏了cooljs的命门了,接下来我们用midway来搭建一个项目,看看最终能不能搭建一个青春版的cool
打开[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 , 目录;
logs : 日志文件夹
src : 主文件夹
src.config : 配置文件
src.controller: 控制器文件夹
src.error:错误类集合
src.filer: 可以理解为异常处理的service文件夹
src.middleware : 中间件,自带一个写log的中间件
src.mock: mock函数,不做解释
src.service: 主要服务处理的集合文件夹
src.configuration.ts :配置文件 // Midway 容器生命周期类,使用 @Configuration 装饰器修饰
src.interface.ts: 接口集合不做解释