koa路由怎么用

图片描述

图片描述

求教,为什么执行不到this.body这一步呢,路由写错了吗

阅读 2.7k
2 个回答

应该是koa-router吧
我平常是这么用的

var koa = require('koa');
var koaRoute = require('koa-router');
var views = require('koa-views');

var app = new koa();
var router = new koaRoute();

router.get('/', async (ctx)=>{
    await ctx.render('index')
})

app.use( views('./views/' , {
    extension:'ejs'
}) );


app.use( router.routes() );


app.listen(3000)

koa-route好像已经不支持Generator了
建议更改成普通函数或者async函数
如果要使用Generator函数的话
可以这么使用

app.use(route.get('/get',(ctx)=> {
    co(function *(){
        ctx.body = 'get'
    })
}))

引入co包裹Generator

当然现在写肯定是推荐async加上koa-router了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题