1.安装koa-router和自动路由插件require-directory
"koa-router": "^7.4.0",
"require-directory": "^2.1.1",
2.新增init目录并创建InitManager类
const Router = require('koa-router')
const requireDirectory = require('require-directory')
class InitManager{
static initCore(app){
//入口方法
InitManager.app = app
InitManager.initLoadRouters()//自动路由方法
}
static initLoadRouters(){
//path config
const apiDirectory = `${process.cwd()}/app/api` //路由目录 process.cwd()工程根目录
requireDirectory(module, apiDirectory, {
visit: whenLoadModule
})
function whenLoadModule(obj) {
if(obj instanceof Router ){
InitManager.app.use(obj.routes())
}
}
}
}
module.exports=InitManager
3.在app.js导入init并执行
const Koa = require('koa')
const InitManager=require('./core/init')//自由路由类
const app = new Koa()
InitManager.initCore(app)