installer.js 739 B

123456789101112131415161718192021222324252627
  1. const fs = require('node:fs');
  2. const path = require('node:path');
  3. const Router = require('@koa/router');
  4. const apiRouter = new Router({
  5. prefix: '/api/editor',
  6. });
  7. /**
  8. * 路由自动注册
  9. */
  10. const routerInstaller = (app) => {
  11. const exclude = [];
  12. const routerdir = path.resolve(__dirname, '../router');
  13. const routers = fs.readdirSync(path.resolve(routerdir), {
  14. encoding: 'utf-8',
  15. });
  16. const include = routers.filter((i) => exclude.indexOf(i) === -1);
  17. include.forEach((i) => {
  18. apiRouter.use(require(`${routerdir}/${i}`).routes());
  19. apiRouter.use(require(`${routerdir}/${i}`).allowedMethods());
  20. });
  21. app.use(apiRouter.routes());
  22. app.use(apiRouter.allowedMethods());
  23. };
  24. module.exports = {
  25. routerInstaller,
  26. };