【问题标题】:why am i getting null in mongoose findOne为什么我在猫鼬 findOne 中为空
【发布时间】:2021-09-18 09:03:57
【问题描述】:

这是我的要求 -

interface IGetFullnameRequest extends IAuthenticatedRequest {
    readonly body: Readonly<{
        fullname: string;
    }>;
}

这是我的控制器 -

const getFullname = async (req: IGetFullnameRequest, res: IGetFullnameResponse) => {

    const userByFullname: Omit<IUserDocument, 'fullname'
    > | null = await UserDB.findOne({ fullname: req.body.fullname });

    console.log(userByFullname);
}

我得到了 null - 有人知道为什么吗?

【问题讨论】:

  • 大概是因为没有findOne可以返回的原因。
  • @mkrieger1 你是什么意思?
  • findOne 提供地返回一些匹配条件的值。如果没有符合条件的值,它应该返回什么?我猜它会返回 null。
  • @mkrieger1 你能用代码解释一下我的问题是什么吗?
  • 我不知道该怎么解释给你。

标签: node.js typescript mongoose


【解决方案1】:

您必须在findOne 方法内指定一个函数才能获得结果,

await UserDB.findOne({ fullname: req.body.fullname }, function(err, result) { ... });

只需将您的代码替换为上述代码即可。

【讨论】:

  • 您的答案可以通过添加有关代码的作用以及它如何帮助 OP 的更多信息来改进。
猜你喜欢
  • 1970-01-01
  • 2020-02-03
  • 1970-01-01
  • 2020-11-03
  • 2014-08-12
  • 1970-01-01
  • 1970-01-01
  • 2012-11-07
  • 2019-08-10
相关资源
最近更新 更多