0
私は次のエラーをキャッチしたい:try catchによって捕まえられない - thatsコールバックは別のスタックで実行されるため。私はあなたが関数内でtry-catchブロックを追加することができ、子プロセスJavascript try catch scope問題
import { spawn } from 'child_process'
const child = spawn('python', ['plot.py', 'non/existing/file.txt'])
child.stdout.on('data', console.log.bind(console))
child.stderr.on('data', console.log.bind(console))
try{
child.on('close', function(code){
throw new Error(`some error that doesnt get caught`)
})
}
catch(e){
console.log('catch')
console.log(e)
}
'try ... catch'は同期式なので、エラーを非同期に処理する必要があります。エラーを処理する方法については、 'child.on( 'error'、callback)'の[docs](https://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options) – elclanrs