1.项目目录

2.入口文件
根目录/app.js
/**
* koa 路由模块化
*/
const Koa = require('koa');
const router = require('koa-router')();
// 引入子模块(子路由)
const admin = require('./routes/admin.js');
const api = require('./routes/api.js');
// 实例化
var app = new Koa();
// 配置路由
router.get('/', (ctx) => {
ctx.body = '这是一个首页';
})
/**
* /admin 配置子路由(层级路由)
* /admin/user
*/
router.use('/admin', admin.routes());
/**
* /api/newslist 新闻列表的api
*/
router.use('/api', api); /*在模块里面暴露路由并且启动路由*/
// 启动路由
app.use(router.routes()).use(router.allowedMethods())
app.listen(8008);
3.层级路由
根目录/routes/admin.js
const router = require('koa-router')();
router.get('/', (ctx) => {
ctx.body = '后台管理系统首页';
})
router.get('/user', (ctx) => {
ctx.body = '用户管理';
})
router.get('/focus', (ctx) => {
ctx.body = '轮播图管理';
})
router.get('/news', (ctx) => {
ctx.body = '新闻管理';
})
module.exports = router;
根目录/routes/api.js
const router = require('koa-router')();
router.get('/', (ctx) => {
ctx.body = {
"title": "这是一个api"
}
})
router.get('/newslist', (ctx) => {
ctx.body = {
"title": "这是一个新闻接口"
}
})
router.get('/focus', (ctx) => {
ctx.body = {
"title": "这是一个轮播图的api"
}
})
module.exports = router.routes();
.