Запуск параллельных скриптов npm на windows
В моем package.json есть параллельный скрипт npm, который работает на Mac, но не на Windows:
"myScript": "nodemon ./server.js & cross-env NODE_ENV=development webpack-dev-server"
Когда он разделен на два сценария для отдельного запуска, он отлично работает как на Mac, так и на Windows:
"myScript1": "cross-env NODE_ENV=development webpack-dev-server",
"myScript2": "nodemon ./server.js",
Я хотел бы сохранить параллельный скрипт, чтобы мне не пришлось запускать оба по отдельности. Как мне заставить это работать на окнах?
1 ответ
У меня есть обходной путь для этого, используя модуль одновременно. Таким образом, ваш сценарий будет выглядеть примерно так:
scripts: {
"myScript": "concurrently \"npm run myScript1\" \"npm run myScript2\"",
"myScript1": "cross-env NODE_ENV=development webpack-dev-server",
"myScript2": "nodemon ./server.js",
}
Я рекомендую использовать npm-run-all, я думаю, что синтаксис немного чище:
scripts: {
"myScript": "run-p myScript1 myScript2",
"myScript1": "cross-env NODE_ENV=development webpack-dev-server",
"myScript2": "nodemon ./server.js",
}
Этот пакет npm-run-all предоставляет 3 команды CLI.
- npm-run-all
- Run-s
- Run-p
Основная команда - npm-run-all. Мы можем строить сложные планы с помощью команды npm-run-all.
И run-s, и run-p - это сокращенные команды.
run-s для последовательного, run-p для параллельного. С помощью этих команд мы можем строить простые планы.