¿Cómo puedo ejecutar varios scripts npm en paralelo?

Resuelto Andre Pena asked hace 9 años • 32 respuestas

En mi package.jsontengo estos dos scripts:

  "scripts": {
    "start-watch": "nodemon run-babel index.js",
    "wp-server": "webpack-dev-server",
  }

Tengo que ejecutar estos 2 scripts en paralelo cada vez que empiezo a desarrollar en Node.js. Lo primero que pensé fue en agregar un tercer script como este:

"dev": "npm run start-watch && npm run wp-server"

... pero eso esperará start-watcha que termine antes de ejecutarse wp-server.

¿Cómo puedo ejecutarlos en paralelo? Tenga en cuenta que necesito ver el contenido outputde estos comandos. Además, si su solución implica una herramienta de compilación, prefiero usarla gulpporque gruntya la uso en otro proyecto.

Andre Pena avatar Jun 20 '15 10:06 Andre Pena
Aceptado

Utilice un paquete llamado simultáneamente .

npm i concurrently --save-dev

Luego configure su npm run devtarea de la siguiente manera:

"dev": "concurrently --kill-others \"npm run start-watch\" \"npm run wp-server\""
Neil Kistner avatar Jun 20 '2015 04:06 Neil Kistner

Si está utilizando un entorno tipo UNIX, simplemente utilice &como separador:

"dev": "npm run start-watch & npm run wp-server"

De lo contrario, si está interesado en una solución multiplataforma, puede usar el módulo npm-run-all :

"dev": "npm-run-all --parallel start-watch wp-server"
Diogo Cardoso avatar Feb 17 '2016 11:02 Diogo Cardoso

Desde Windows cmd puedes usar start:

"dev": "start npm run start-watch && start npm run wp-server"

Cada comando lanzado de esta manera comienza en su propia ventana.

Oleg avatar Mar 29 '2016 04:03 Oleg