【问题标题】:MongoDb and Nodejs Server ResponseMongoDb 和 Nodejs 服务器响应
【发布时间】:2012-09-12 08:40:04
【问题描述】:

在我的 javascript 类中,我有一个函数可以返回类似的列表,

//ProjectClass.js
getProjectList: () =>
    @Project.find (err, projects) =>
        console.log(projects)
        return projects

但是,每当我尝试从 nodejs 发送服务器响应时

//App.js
project = new projectSchema.Project()
res.send(project.getProjectList())

我收到以下回复

{
    "options": {
        "populate": {}
    },
    "_conditions": {},
    "_updateArg": {},
    "op": "find"
}

具有讽刺意味的是,如果我将 res 对象传递给我的 getProjectList 并从我的 getProjectList 函数发送服务器响应,那么一切正常。

感谢您的帮助!

【问题讨论】:

    标签: node.js mongodb coffeescript mongoose restify


    【解决方案1】:

    @Project.find 是一个异步函数,一旦find 结果可用,就会调用您的匿名回调。 getProjectList 返回在该函数中执行的最后一个同步语句的结果,即 @Project.find 的返回值。这不是您的回调返回的 projects 数组,而是您在响应中看到的查询对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-18
      • 1970-01-01
      • 2023-03-23
      • 1970-01-01
      • 2018-02-19
      • 2020-08-19
      相关资源
      最近更新 更多