2

指定されたクエリによって選択されたコレクション項目を返す collection.find メソッド用の独自のラッパーを作成しようとしていmongojsます (クエリはまだ実装されておらず、単にすべての結果を選択する必要があります)。問題は、結果の配列が返されないことです。find メソッドがある種の非同期コールバックを行うようです。同期呼び出しを強制したり、スクリプトを強制的に待機させたりするにはどうすればよいでしょうか?

Collection.prototype.find = function () {
    var result = new Array;
    if (Bridge.isServer) {
        db.collection(name).find(function(err, items) {
            items.forEach(function(item) {
                result.push(item);
            });
        });
    }
    return result;
}
4

1 に答える 1