-1

私の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 関数からサーバーの応答を送信すると、すべて正常に動作します。

助けてくれてありがとう!

4

1 に答える 1

2

@Project.findfind結果が利用可能 になると、匿名のコールバックを呼び出す非同期関数です。getProjectListの戻り値である、その関数で実行された最後の同期ステートメントの結果を返します@Project.find。これはprojects、コールバックが返す配列ではなく、応答に表示されるクエリ オブジェクトです。

于 2012-09-20T01:30:26.930 に答える