说明
有时候路由太多了 一个index.js页面看着很凌乱 所以我们把它拆分出来 分类存放 修改也好看
使用到的是require-directory模块
Tips:可以实现一个目录中文件的批量导入 就是一个文件夹下面的所有文件都会被批量导入 包括再在这个文件夹建立一个文件夹 这个文件夹下的文件也会被导入 详情看最下面的图片箭头图
yarn add require-directory
使用的模块
config index.js

const render = require('koa-art-template');const requireDir=require("require-directory")const path = require("path")const Router=require("koa-router")function initProject(app) {requireDir(module, "../routers", { visit: loadRoutes })//导入这个require-directory//第一个参数是module 第二个是路由的路径 第三个是visit对象 它触发一个函数 函数名可以自定义function loadRoutes(obj) {console.log(obj instanceof Router); //判断这三个路由是否都是Router的实例if (obj instanceof Router) {app.use(obj.routes())}}render(app, {root: path.join(process.cwd(), 'pages'),extname: '.html',debug: process.env.NODE_ENV !== 'production'});}module.exports=initProject
routers
home/home.js
const router = require("koa-router")()router.get("/home", async ctx => {await ctx.render("home")})module.exports=router
home/login.js
const router = require("koa-router")()router.get("/login", async ctx => {await ctx.render("login")})module.exports=router
music.js
const router = require("koa-router")()router.get("/music", async ctx => {await ctx.render("music")})module.exports=router
index.js
const koa =require("koa")const app = new koa()const initProject = require("./config")initProject(app)app.listen(8080)
![_E5{7VDU9)7GNX(]P0JA~I3.png](/uploads/projects/u22183661@ha7cd7/beb1bf964c670e8516fe353518ce7a87.png)
