Нет вывода из .execSync, но возвращает результат при запуске команды из терминала - PullRequest
0 голосов
/ 09 декабря 2018

Обновление -

Ниже приведен фрагмент, который я запускаю через узел, который ничего не выводит из .execSync, но если я запускаю ту же команду в терминале, я получаю результат в виде JSON, как и ожидалось.

Код -

console.log(`test-package is installed 1 =========>>>>>>>`)
require('child_process').execSync('npm ls test-package --json', function (err, stdout, stderr) {
        if (err) return console.log(err)
        console.log(stdout)
        return true
})
console.log(`test-package is installed 2=========>>>>>>>`)
} else {
console.log(`test-package is not installed ++++++++++++++++>>>>>>>>>`)
}

Вывод кода -

test-package is installed 1=========>>>>>>>
test-package is installed 2=========>>>>>>>

Но если я запускаю команду -

npm ls test-package --

он возвращает что-то вроде этого -

{
  "name": "test-project",
  "version": "0.1.1",
  "dependencies": {
    "test-package": {
      "version": "1.5.0"
    }
  }
}

Дайте мне знать, что я делаю здесь неправильно.

...