【问题标题】:variable becomes undefined when used inside mongoose findOne in nodejs在nodejs中的猫鼬findOne中使用时变量变得未定义
【发布时间】:2021-03-19 16:11:37
【问题描述】:

在创建对象然后通过 findOne 查询它时,它不会被拾取。下面是我的用例

const findOrderByStatus = (orderStatus, userDetails) => {
  let orderById = new Types.ObjectId(userDetails._id);
  console.log({ status: orderStatus, orderedBy: orderById });
  console.log('order status:', orderStatus); // printing orderStatus value which is 'requested'
  return Order.findOne({ status: orderStatus, orderedBy: orderById }); // but here orderStatus value becomes undefined
};

status 属性是一个 @safer-bwd/mongoose-state-machineorderStatus 在 Order.findOne 外部打印,但在 Order.findOne 内部它变为 undefined,即使一个值是硬编码的,该值仍然变为 undefined,但在重新启动服务器后它是能够选择值。

下面是我的查询重启服务器之前

猫鼬:orders.findOne({ status: undefined }, { projection: {} })

下面是重启服务器后的查询

猫鼬:orders.findOne({ status: 'requested' }, { projection: {} })

我不明白为什么会这样。

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    错误已修复。

    https://github.com/safer-bwd/mongoose-state-machine/issues/4

    感谢您对问题的详细描述。

    【讨论】:

    • 最好说明问题是如何解决的
    猜你喜欢
    • 1970-01-01
    • 2016-09-27
    • 2015-06-16
    • 1970-01-01
    • 2014-08-12
    • 2021-09-06
    • 1970-01-01
    • 2015-12-29
    • 2011-10-25
    相关资源
    最近更新 更多