TypeError:res.status不是函数expess应用程序

编程入门 行业动态 更新时间:2024-10-10 19:22:39

TypeError:res.status不是函数expess<a href=https://www.elefans.com/category/jswz/34/1771452.html style=应用程序"/>

TypeError:res.status不是函数expess应用程序

我正在尝试创建一个生成折扣凭证的函数,并且由于“ TypeError:res.status在控制器上不是一个函数,而导致错误。”

这是我的折扣控制器:

function coupongenerator ()  {
   var coupon = '';
   var possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
   for (var i = 0; i < 10; i++) {
      coupon += possible.charAt(Math.floor(Math.random() * possible.length));
   }
   return coupon;
}
exports.createCoupon = () => {
    let isExistDiscount = false;
    do {
       let myDiscountCode = coupongenerator()
       let newDiscountCode = new Coupon({
          code: myDiscountCode,
          isPercent: true,
          amount:30 ,
          expireDate: '',
          isActive: true
       });
       newDiscountCode.save(function (err,res) {
          if (err) {
             if (err.name === 'MongoError' && err.code === 11000) {
                // Duplicate code detected
                isExistDiscount = true;
             }
          }
          res.status(200).send('yes');
       });
   } while (isExistDiscount);
}
回答如下:

您尝试访问的“ res”对象实际上是将Mongo文档保存在回调函数中之后的响应。 res.status与Express中的HTTP res对象一起使用,通常是控制器的功能参数。只需检查您的控制器变量标识符和回调标识符是否相同即可遮盖控制器变量。因此,res的范围是回调参数中的res,在其中没有名为status的功能。如果那是原因,请更改标识符名称之一。

更多推荐

TypeError:res.status不是函数expess应用程序

本文发布于:2024-05-07 06:37:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1754857.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:应用程序   函数   res   TypeError   expess

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!