0

ステートフルな Node.js モジュールを用意できますか? お気に入り:

exports.connectionsCache = new (function () {
    var cache = {};

    this.getOrCreate = function (url) {
        if (!cache[url]) {
            cache[url] = new Connection(url);
        }
        return cache[url];
    };
}());

require状態は複数の呼び出しに耐えられますか? それとも、そのために単純なグローバル オブジェクトを使用する必要がありますか?

4

1 に答える 1

5

requireすでにモジュールをキャッシュしています:

test2.js:

module.exports = {
    state: 0
};

test.js

var state = require("./test2.js");

state.state = 3;

console.log(state.state);

var state2 = require("./test2.js");

console.log(state2.state);

state2.state = 4;

console.log(state.state);

出力

$ node test.js
3
3
4
于 2012-08-13T15:55:49.723 に答える