使用 koa-router 路由拆分

根据功能不同,将路由拆分到不同的模块

目录结构:

app.js

const Koa = require('koa');
const Router = require('koa-router');

const app = new Koa();
const router = new Router();

// 意思是:如果你访问的是根(localhost:3000/),要怎么处理,你去找 './routers/www/index.js'
router.use('', require('./routers/www'));

// 意思是:如果你访问的是 localhost:3000/admin 开头的,要怎么处理,你去找 './routers/admin/index.js'
router.use('/admin', require('./routers/admin'));

app.listen(3000, () => console.log('Running...'));
app.use(router.routes());

routers/admin/index.js:导出 router.routes()

 1 const Router = require('koa-router');
 2 
 3 const router = new Router();
 4 
 5 // 这里就是 localhost:3000/admin
 6 router.get('/', async ctx => {
 7     ctx.body = ctx.url;
 8 });
 9 
10 // 还可以继续分
11 // 意思是:如果你访问的是 localhost:3000/admin 开头的,你已经找到我了
12 // 但是,如果后面跟的是 /login,那你还得继续找 './login/login.js' 至于怎么处理,它说了算
13 router.use('/login', require('./login/login')); // 这里就是 localhost:3000/admin/login
14 
15 module.exports = router.routes();

根据需要,可以无限拆分

猜你喜欢

转载自www.cnblogs.com/clmf/p/10960104.html