Uso koa para crear una aplicación nodejs y trato de optimizar.
aplicación.js
'use strict'; const Koa = require("koa"); const app = new Koa(); const Router = require("koa-router"); const router = new Router(); const stuff = require("./router/stuff.js"); router.use("/stuff", stuff.routes()); //more routers like above const home = require("./router/home.js"); router.use(home.routes()); app.use(router.routes(), router.allowedMethods()); app.listen(port); Hay algunos archivos de enrutador en la carpeta router , como stuff.js , home.js , client.js
cosas.js
'use strict'; const router = require("koa-router")(); router .get("/", async (ctx) => { await ctx.render("stuff", { }); }) module.exports = router;casa.js
'use strict'; const router = require("koa-router")(); router .get("/", async (ctx) => { await ctx.render("home", { }); }) module.exports = router;cliente.js
'use strict'; const router = require("koa-router")(); router .get("/", async (ctx) => { await ctx.render("client", { }); }) module.exports = router;Creo que la forma en que escribí es todavía muy amateur, ¿cómo optimizarla? Gracias.
Después de investigar, estoy usando la siguiente solución.
aplicación.js
'use strict'; const Koa = require("koa"); const app = new Koa(); const router = require("./router"); router(app); app.listen(port); en la carpeta router , agregue index.js con el siguiente código
'use strict'; const fs = require('fs'); module.exports = (app) => { fs.readdirSync(__dirname).forEach(file => { if (file === 'index.js') { return; } const route = require(`./${file}`); app.use(route.routes()).use(route.allowedMethods()); }); } Otros archivos de enrutador son iguales, por ejemplo, home.js
'use strict'; const router = require("koa-router")(); router .get("/", async (ctx) => { await ctx.render("home", { }); }) module.exports = router;