map reduce 関数がクライアント スコープを使用できないため、すべての関数をサーバーに送信 (または保存) する必要がある (既存のコードを再利用するのは難しい) という問題を抱えて、mongo を中心に js コードを整理するための良いアイデアを探しています。サーバーに格納された関数を使用できますが、db/client システムのスコープが大きすぎるため、db スコープの関数は使用できないようです。
他のアイデアは、次のようなJavaScriptプリプロセッサを使用することです:
var mapFunction = function() {
// @include lib.js
Lib.foo(this.bar);
}
lib.js :
var Lib = {
foo : function(bar) {...}
}
生成された mapFunction を mapReduce コマンド内で実行します。
mongodb map/reduce javascript コードベース内で (システムに格納された関数を使用せずに) 適切なコードの再利用を実現するための優れたプラクティス/アイデアはありますか?