1

私は最初のノードモジュールを構築しています.jQueryに似たものを手に入れたいと思っています

$(検索項目)

コードは次のようになります

var $$ = require("myModule");

$$(検索).doAction();

などではなく、

$$.doAction(検索);

モジュールでこのような「ルート関数」を返すことは可能ですか? そうすることに何か危険はありますか。

------更新ローランは、アンダースコアが行うように実行可能であり、安全であると述べています。 -----------------------

自己参照関数 (コピーされたアンダースコア) で始まるモジュールのコードを更新しました。

(関数(){
var fs = require("fs");
    console.log("開始");
    var root = this;
    var config = JSON.parse(fs.readFileSync("./config.json"));
    var $$ = 関数(obj){
        if(!obj){
            設定を返します。
        } そうしないと {
            オブジェクトを返します。
        }
    }
}).call(これ)

次に、私のjsページで

require("myModule");
console.log($$("テスト"));

コンソールが「テスト」をログに記録することを願っていますが、残念ながら私は$$("test")機能していません。 - - - - - - - - - - - - - - - - - - アップデート - - - - - - - ------------------------------ jtblin が以下の回答で指摘したように、export はmodule.exports = $$「test」を test として出力するために機能します。関数に渡されましたが、元の例のようにメソッドをチェーンすることはできません。途中ですが。

4

2 に答える 2

2

Underscoreは、最も広く使用されている node.js モジュールの 1 つであり、まさにそれを実行するため、非常に安全です。

于 2013-10-04T08:15:15.380 に答える