2016-08-05 16 views
1

問題があります。私はそれを変数に設定したいと思います。関数の呼び出し時にその変数を返すことを望まないので、別の関数によってエクスポートされます。これどうやってするの。コードはこのように見えます。nodejs内の同じファイル内の別の関数の変数にアクセスする

var details = {}; 
    module.exports.set = function (var1){ 
    details.n = var1; 
} 
module.exports.m = details.n; 

ただし、details.nは未定義です。私はそれがvar details = {}のためであることを知っています。それでは、どうやって私の目的を解決するのですか?前もって感謝します。

答えて

2

あなたはこのあなたがimportを使用してdetailsの参照を取得できるようにする代わりにdetails.n

module.exports.m = details; 

detailsをエクスポートする必要があります。 details.nをエクスポートすると、初期値のみが取得され、更新は反映されません。

+0

することができますコードでのインポートについてもっと少し追加しますか? @ArunGhosh –

0

この作品は、

module.exports.set = function (var1) { 
    module.exports.m = var1; 
}; 

は今、あなたは何を呼設定することができますし、それは 'M' に設定されますしようとしたテスト

var test = require('./test'); 
test.set('test123'); 
console.log(test.m); 
test.set('test1234'); 
console.log(test.m); 
test.set(function() {}); 
console.log(test.m); 

OUTPUT:

test123 
test1234 
[Function] 
関連する問題