search

Home  >  Q&A  >  body text

node.js - koa2 如何获取参数?

环境 koa2 node7

// controllers/user.js
const user = require('../models/user');

const getUserInfo = async (ctx) => {
  const id = this.params['id'];
  this.body = await user.getUserById(id);
};

module.exports = {
  auth: (router) => {
    router.get('/user/:id', getUserInfo);
  }
};

断点调试可以查到 params的 id 参数

但继续执行会报错,

参考文章:学习的博客

补充:我不会用 Koa2 的 context。
下面是我打印 ctx 为一个 空数组

终结:
感谢 @soonfy @鱼香肉丝盖饭 最终解决方案是再次看文档发现 如使用 async/await koa-router 需要 7.0.1

cnpm i koa-router@next --save
ringa_leeringa_lee2808 days ago823

reply all(2)I'll reply

  • 伊谢尔伦

    伊谢尔伦2017-04-17 16:20:20

    ctx encapsulates req and res, what you need may be req.params.id.

    soonfy

    reply
    0
  • PHP中文网

    PHP中文网2017-04-17 16:20:20

    This is how to get it:

    ctx.params.id

    reply
    0
  • Cancelreply