koa-router中间件的基本使用
1.安装
npm install --save koa-router
2.实例化路由
const router = new Router()
3.配置路由
//get请求
router.get('/',(ctx,next)=>{
ctx.body = 'hello lval'
})
//post请求
.post('/todo',(ctx,next)=>{
ctx.body = 'todo pages'
})
4.装载路由
//装载
app
.use(router.routes())
.use(router.allowedMethods())
//监听端口
app.listen(3000,()=>{
console.log('sever starting at localhost:3000')
})
完成上面四步后,路由就可以简单的使用了
路由层级的配置
设置前缀
// koa-router提供了prefix属性可以设置前缀,但这个前缀会被置于路由最顶层,也就是说,所有的请求都是相对于这个前缀的
const router = new Router({
prefix:'/lval'
})
路由层级
设置前缀一般都是全局的,并不能实现路由的层级,如果需要为单个页面设置层级,那么只要在use时使用路径就可以了
const Koa = require('koa')
const Router = require('koa-router')
const app = new Koa()
// 子路由home
let home = new Router()
home.get('/lval',(ctx,next)=>{
ctx.body = 'home lval'
})
.get('/todo',(ctx,next)=>{
ctx.body = 'home todo'
})
// 子路由page
let page = new Router()
page.get('/lval',(ctx,next)=>{
ctx.body = 'page lval'
})
.get('/todo',(ctx,next)=>{
ctx.body = 'page todo'
})
// 装载子路由(use时使用路径)
let router = new Router()
router.use('/home',home.routes(),home.allowedMethods());
router.use('/page',page.routes(),page.allowedMethods())
// 装载路由中间件
app
.use(router.routes())
.use(router.allowedMethods())
app.listen(3000,()=>{
console.log('sever starting at localhost:3000')
})