#node.js
#node.js
Вопрос:
У меня есть следующий файл exec-deploy.js
// exec-deploy.js
const exec = require('child_process').exec
exec("npm run deploy", (err, stdout, stderr) => console.log(stdout))
npm run deploy
при вызове из командной строки печатает много данных во время выполнения, предоставляя мне информацию о ходе развертывания.
Если я выполняю exec-deploy с node exec-deploy
помощью, я вижу всю информацию только в конце выполнения, напечатанную одним кадром на консоли.
Возможно ли получать непрерывный поток информации на терминале, даже когда я выполняю скрипт npm из javascript?
Ответ №1:
После некоторого чтения официальной документации и этой интересной статьи я нашел решение своей проблемы, которое заключается в использовании spawn
вместо exec
указания следующих опций
spawn('npm run deploy', null, {
stdio: 'inherit',
shell: true,
});
Комментарии:
1. Отличная работа по поиску решения вашей проблемы! Вы можете помочь сообществу, отметив этот вопрос как решенный.