他のノードのjsファイルからノードjsファイルを簡単に実行することは可能ですか? たとえば、私はtest1.jsとtest2.jsの2つのファイルを持っています。私はtest2.jsからtest1.jsファイルを実行したいと思います。node.jsに外部ファイルをロードして実行する
答えて
あなたがしようとしていることを達成するより良い方法は、私の他の答えが示唆していることをすることだと思います。しかし、質問が示唆するようにコマンドラインでコマンドを実行するには、child_process.exec
を使います。例:
var exec = require('child_process').exec,
child;
child = exec('node test2.js {{args}}',
function (error, stdout, stderr) {
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error);
}
});
require('test2.js')
を実行し、エクスポートされたオブジェクトで関数を呼び出します。 documentation on modules:
ノードには、単純なモジュールローディングシステムがあります。ノードでは、ファイルとモジュールは1対1で対応しています。一例として、foo.jsはモジュールcircle.jsを同じディレクトリにロードします。 foo.jsはの
内容:
var circle = require('./circle.js');
console.log('The area of a circle of radius 4 is ' + circle.area(4));
circle.jsを内容:
var PI = Math.PI;
exports.area = function (r) {
return PI * r * r;
};
exports.circumference = function (r) {
return 2 * PI * r;
};
あるcircle.jsは、(機能エリアをエクスポート)と円周()を有しています。オブジェクトをエクスポートするには、特別なエクスポートオブジェクトに追加します。
エクスポートはmodule.exportsへの参照であり、拡張にのみ適していることに注意してください。コンストラクタなどの単一項目をエクスポートする場合は、代わりにmodule.exportsを直接使用することをお勧めします。
function MyConstructor (opts) {
//...
}
// BROKEN: Does not modify exports
exports = MyConstructor;
// exports the constructor properly
module.exports = MyConstructor;
モジュールのローカル変数はプライベートになります。この例では、変数PIはcircle.jsに対してprivateです。
モジュールシステムは、require( "module")モジュールに実装されています。
ええと...この回答がなぜ投票に失敗したのか分かりません。受け入れられた答えではないにしても、モジュールとやりとりする正しい方法です... – kentcdodds
私はそれをモジュールにすれば、それを単独で実行することはできません。私はいくつかのタスクのために別々のスクリプトを用意し、必要なすべてのタスクを指定された順序で実行できるいくつかのディスパッチャスクリプトを用意しています。私のタスクがエクスポートされたモジュールである場合、私はこれらのタスクを単独で実行することはできません。タスクを実行するためにいくつかのラッパースクリプトを作成する必要があります。 – JustAMartin
- 1. javascript外部ファイルをロードして処理を続行する
- 2. divに外部ファイルをロード
- 3. C#:外部コンソールプログラムを隠しファイルとして実行する
- 4. Webフォームをロードした後に外部JavaScriptファイルをロードする
- 5. Pythonを使用して外部実行ファイルを実行する方法は?
- 6. Nodejsファイルをロードして実行する
- 7. 外部javascriptファイルを含む外部htmlファイルをdivにロード
- 8. スタンドアロンのフラッシュexeファイルは外部ファイル/イメージをロード/実行できますか?
- 9. Node.js - 外部のJSとCSSファイル(単にnode.jsを使用していません)
- 10. processing.js外部ファイルをロードする
- 11. Javascriptを使用して外部ファイルをロードする
- 12. Windows上のnode.jsで外部プログラムをどのように実行しますか?
- 13. node.jsスレッドループ外のコード実行
- 14. 外部jQueryファイルを持つNode.js
- 15. jqueryを使用してdivに外部HTMLファイルをロード
- 16. Ruby Mysql - .sqlファイルをロードして実行
- 17. スカラインタラクティブインタプリタ(REPL)内から外部ファイルを実行するには?
- 18. node.jsを使用してexeファイルを実行する
- 19. Javaから外部アプリケーションを実行するか、BATファイルを実行する
- 20. ポート80以外のポートでnode.jsを実行しています
- 21. 複数のデータ部分を含む外部ファイルをロードする
- 22. Visual C++ 2003で外部実行可能ファイルに接続する
- 23. Eclipse PDTから外部ファイルを実行しますか?
- 24. AS3を使用して外部サーバーからXMLファイルをロード
- 25. 外部プロパティファイルをWebLogic 11上で実行するEJB 3アプリケーションにロード
- 26. 外部RAMにFreeRTOSを実行しているSTM32F4
- 27. 外部xamlファイルのコードビハインドを動的にロードしますか?
- 28. フォルダ外からNode.jsファイルを実行すると、ファイルパスが破損する
- 29. ループ内で外部PHPファイルを実行する
- 30. 外部の.exeファイルを実行するPython 3
*実行*とはどういう意味ですか? test1.jsで 'require( 'test2.js')'を実行するとどう違うのですか? – adrianp
@adrianp "node test1.js"このようにして、ノードjsファイルを実行または実行しています。私はtest2.jsからtest1.jsを実行したいです – sudhakar
@sudhakar、あなたは[このような](http://www.dzone.com/snippets/execute-unix-command-nodejs)について話していますか? – kentcdodds