2

node.js プロジェクトに 2 つのファイルがあります。timer.js と app.js。

基本的にタイマーが行うことは、関数myNumberで増加する変数を持っているsetIntervalことです。必要なときにいつでもその変数にアクセスできるようにしたいと思います。現在、次のコードを使用しています。

var myNumber = 0;

setInterval(myMethod, 1);

function myMethod() {
    myNumber++;
    module.exports = myNumber;
}

そして、これは非常に間違っていると感じました(私は完全な初心者です)、正しい方法でそれを行う方法を教えてもらえますか?

私がやりたいことは、別のファイルでこのような変数を取得するたびに、myNumber の現在の値を取得することです。現在、私はこのようにしており、機能しています(それでも、これ間違っているに違いありません):

exports.index = function(req, res){
    var timer = require("../timer.js");
    res.end("timer tick at: " + timer);
};
4

1 に答える 1

8

私のコメントで述べたように、私は単に添付myNumbermodule.exportsます:

module.exports.myNumber = 0;

setInterval(myMethod, 1);

function myMethod() {
    module.exports.myNumber++;
}

モジュールの他のモジュールはモジュール コードrequireと同じ参照を共有するため、エクスポートされたオブジェクトを必要なだけ更新できます。module.exports

于 2012-11-25T09:20:48.360 に答える