他のノードの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. Node.jsを使用して外部JSファイルにjavascript関数をロードして実行
- 2. 実行時にUnity WebGLビルドに外部OGGファイルをロード
- 3. javascript外部ファイルをロードして処理を続行する
- 4. divに外部ファイルをロード
- 5. jqueryを使用して外部JSファイルを外部ページにロードするAJAX
- 6. C#:外部コンソールプログラムを隠しファイルとして実行する
- 7. Vue.jsに外部Javascriptファイルをロードする
- 8. Webフォームをロードした後に外部JavaScriptファイルをロードする
- 9. Java実行外部exeファイル
- 10. Nodejsファイルをロードして実行する
- 11. Pythonを使用して外部実行ファイルを実行する方法は?
- 12. 外部javascriptファイルを含む外部htmlファイルをdivにロード
- 13. スタンドアロンのフラッシュexeファイルは外部ファイル/イメージをロード/実行できますか?
- 14. 外部からnode.jsが実行するページへのアクセス
- 15. processing.js外部ファイルをロードする
- 16. Javascriptを使用して外部ファイルをロードする
- 17. Node.js - 外部のJSとCSSファイル(単にnode.jsを使用していません)
- 18. 外部jsファイルがロードされた後にスクリプト要素内でコードを実行
- 19. 外部HTMLファイルをロードして再作業する機能
- 20. 外部CSSファイルのロード順
- 21. HTMLの外部Javascriptファイルを使用してPHPスクリプトを実行
- 22. Windows上のnode.jsで外部プログラムをどのように実行しますか?
- 23. jqueryを使用してdivに外部HTMLファイルをロード
- 24. 外部jQueryファイルを持つNode.js
- 25. node.jsスレッドループ外のコード実行
- 26. Node.js - Promise.all()を使用して複数の関数をロードして実行する
- 27. Ruby Mysql - .sqlファイルをロードして実行
- 28. スカラインタラクティブインタプリタ(REPL)内から外部ファイルを実行するには?
- 29. javascriptで外部のPHPファイルを実行するには?
- 30. Javaから外部アプリケーションを実行するか、BATファイルを実行する
*実行*とはどういう意味ですか? 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