In meiner package.json
habe ich diese beiden Skripte:
"scripts": {
"start-watch": "nodemon run-babel index.js",
"wp-server": "webpack-dev-server",
}
Ich muss diese 2 Skripte parallel jedes Mal ausführen, wenn ich mit der Entwicklung in Node.js beginne. Das erste, woran ich dachte, war, ein drittes Skript wie dieses hinzuzufügen:
"dev": "npm run start-watch && npm run wp-server"
... aber das wird warten, bis start-watch
beendet ist, bevor es wp-server
ausführt.
Wie kann ich diese parallel laufen lassen? Bitte denken Sie daran, dass ich die "Ausgabe" dieser Befehle sehen muss. Wenn Ihre Lösung ein Build-Tool beinhaltet, würde ich lieber gulp
anstelle von grunt
verwenden, da ich es bereits in einem anderen Projekt einsetze.
Verwenden Sie ein Paket namens concurrently.
npm i concurrently --save-dev".
Dann richten Sie Ihre npm run dev
Aufgabe wie folgt ein:
"dev": "concurrently --kill-others \"npm run start-watch\" \"npm run wp-server\""
Die Verwendung des Concurrently-Pakets funktioniert, aber Sie brauchen es nicht, um dies zu erreichen. Auf UNIX-basierten Rechnern können Sie einfach eine Pipe verwenden, um gleichzeitige Aufgaben auszuführen. Ich würde diese Methode der anderen vorziehen, da Sie so keine zusätzliche Abhängigkeit hinzufügen müssen.
"dev": "npm run start-watch > /dev/null | npm run wp-server"
Hinweis: Die Ausgabe des ersten Befehls wird ignoriert