サーバー側でも使えるゲームエンジンを作り、Node.jsで実行する予定でした。
エンジンは完全に1つのファイルにパックされており、最後に次のようにエクスポートします。
module.exports = Irenic; //Irenic is just the name of the engine. This is actually an object housing most of the classes and functions.
しかし、Irenic
オブジェクトの外部でいくつかの関数を作成した場合はどうなりますか?たとえば、アクティブなタイムアウト/間隔の数を追跡するようsetInterval
にsetTimeout
関数を再定義しましたが、エンジンが含まれているファイルの外部ではそれらを使用できないことに気づきました。
ファイル内のすべてをエクスポートするにはどうすればよいですか?(私はすでに試しmodule.exports = this;
ましたが、機能しませんでした。空のオブジェクトをエクスポートしました。)
編集1:エンジンを含めるファイル内の関数を単純に実行できるようにしたいcall()
のですが、のようなことはしませんexportedObj.call()
。