1

サーバー側でも使えるゲームエンジンを作り、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オブジェクトの外部でいくつかの関数を作成した場合はどうなりますか?たとえば、アクティブなタイムアウト/間隔の数を追跡するようsetIntervalsetTimeout関数を再定義しましたが、エンジンが含まれているファイルの外部ではそれらを使用できないことに気づきました。

ファイル内のすべてをエクスポートするにはどうすればよいですか?(私はすでに試しmodule.exports = this;ましたが、機能しませんでした。空のオブジェクトをエクスポートしました。)

編集1:エンジンを含めるファイル内の関数を単純に実行できるようにしたいcall()のですが、のようなことはしませんexportedObj.call()

4

1 に答える 1

2

エンジンと関数を、エクスポートするオブジェクトにラップすることができます。

module.exports = {engine: Irenic, fun: function(){...} ... }
于 2012-08-08T17:29:51.300 に答える