Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何修复ReferenceError:req未在Javascript中定义_Javascript_Express - Fatal编程技术网

如何修复ReferenceError:req未在Javascript中定义

如何修复ReferenceError:req未在Javascript中定义,javascript,express,Javascript,Express,我的rankcard.jscode const router=require('express').router(); const canvacord=要求(“canvacord”); 路由器.get(“/”,(请求,res)=>{ res.render(图像) }) 常数数据={ 化身:req.query.avatar, currentXP:req.query.currentXP, requiredXP:req.query.requiredXP, 状态:req.query.status, 颜色

我的
rankcard.js
code

const router=require('express').router();
const canvacord=要求(“canvacord”);
路由器.get(“/”,(请求,res)=>{
res.render(图像)
})
常数数据={
化身:req.query.avatar,
currentXP:req.query.currentXP,
requiredXP:req.query.requiredXP,
状态:req.query.status,
颜色:req.query.progressBarColor,
用户名:req.query.username,
鉴别器:req.query.discriminator
}
const rank=新的canvacord.rank()
.setAvatar(data.avatar)
.setCurrentXP(data.currentXP)
.setRequiredXP(数据.requiredXP)
.setStatus(数据状态)
.setProgressBar(data.color,“color”)
.setUsername(data.username)
.设置鉴别器(数据鉴别器);
rank.build()
。然后(缓冲区=>{
常量图像=(缓冲区,'rank.png');
})
module.exports=路由器;
我尝试了很多方法来修复,但我找不到[![此错误][1][1]的原因
[1]: https://i.stack.imgur.com/ioQQN.png

您应该使用以下函数重构此函数:

const router = require('express').Router();
const canvacord = require("canvacord");

router.get('/', (req, res) => {
  res.render(image)

  const [data, rank] = getData(req);
})


function getData(req) {

const data = {
  avatar: req.query.avatar,
  currentXP: req.query.currentXP,
  requiredXP: req.query.requiredXP,
  status: req.query.status,
  color: req.query.progressBarColor,
  username: req.query.username,
  discriminator: req.query.discriminator
}
const rank = new canvacord.Rank()
    .setAvatar(data.avatar)
    .setCurrentXP(data.currentXP)
    .setRequiredXP(data.requiredXP)
    .setStatus(data.status)
    .setProgressBar(data.color, "COLOR")
    .setUsername(data.username)
    .setDiscriminator(data.discriminator);
rank.build()
    .then(buffer => {
        const image = (buffer, 'rank.png');
    })


return [data, rank];

}



module.exports = router;

req
超出范围。在
路由器内移动
const data={}
获取
回调,或将
req
分配给全局变量等待我试试