これは私がモジュールを作成する方法です。
myModule.js
var MyObject = function() {
// This is private because it is not being return
var _privateFunction = function(param1, param2) {
...
return;
}
var function1 = function(param1, callback) {
...
callback(err, results);
}
var function2 = function(param1, param2, callback) {
...
callback(err, results);
}
return {
function1: function1
,function2: function2
}
}();
module.exports = MyObject;
そして、あなたは、単にrequire
を使用し、通常どおりオブジェクトを使用することができ、別のJSファイルにこのモジュールを使用します:
someFile.js
var myObject = require('myModule');
myObject.function1(param1, function(err, result) {
...
});
ノード内でオブジェクト定義の最後に関数を返さないと、私は(プライベート)関数にアクセスできなくなりますか?モジュールを必要としても? –
正しいです、あなたはオブジェクトを介してアクセスすることはできません。 'myObject._privateFunction(p1、p2)'はエラーを返します 'TypeError:Object#