2017-10-20 13 views
0

別のノードプロジェクトからnpmスクリプトの1つを実行する必要があります。 異なるプロジェクト/リポジトリからプロジェクトのnpmスクリプトを実行する

const installingf = spawn('cd', ['[path to directory]', '&&', 'npm', 'run', 'test']); 

installingf.on('message', (data) => { 
    console.log(`stdout: ${data}`); 
}); 

installingf.on('error', (data) => { 
    console.log(`stderr: ${data}`); 
}); 

installingf.on('close', (code) => { 
    console.log(`child process exited with code ${code}`); 
}); 
が、それは動作しません:私が試した何

。コード0で終了した子プロセスは、です。

mkdirを試してみましたが、実行されたかどうかをテストしましたが、作成されたディレクトリはありません。コード0で終了しますが、スクリプトは実行されません。

私はこれを行う方法と私が間違って何かをしている場合を理解してください。

+0

downvoteを説明してください。質問に何か不足している場合は、質問に追加します。ありがとう:) –

答えて

0

あるコマンドを実行しようとしているのに、cmdを実行していない可能性があります。

エイリアスを作成していない限り、cdコマンドはウィンドウに存在しません。したがって、実行する引数を指定して 'cmd'を実行する必要があります。

const spawn = require('child_process').spawn; 
const bat = spawn('cmd.exe', ['/c','calc.exe']); 

bat.stdout.on('data', (data) => { 
    console.log(data); 
}); 

bat.stderr.on('data', (data) => { 
    console.log(data); 
}); 

bat.on('closed', (code) => { 
alert(`Child exited with code ${code}`); 
}); 
関連する問題