Моему приложению Electron необходимо открыть внешнюю программу и дождаться ее закрытия, прежде чем реагировать снова. В Windows это работает нормально, но у macOS есть некоторые проблемы.
Так что мой код для яблока
const cp = require('child_process');
let child;
child = cp.exec('open -a Keynote \"'+pathToFile+'\"'), function(error, stdout, stderr){
if(error) {
throw error;
}
}
child.on('close', function () {
//do something when external application is closed
}
Проблема в том, что по какой-то причине процесс отправляет close
событие сразу после запуска приложения. Есть ли способ контролировать, открыт ли Keynote в macOS, или это просто ошибка?