Sind Sie sicher, dass Sie ein Startskript von package.json ausführen können? Denn soweit ich weiß, soll package.json alle Ihre Abhängigkeiten auflisten und nodemon Ihren Prozess am Laufen halten. Ich bin mir nicht ganz sicher, was Sie hier andeuten?
Entschuldigung, suchen Sie nach einer Möglichkeit, das Startskript mit nodemon auszuführen, und führen Sie nodemon nicht im Startskript aus. Entschuldigung, wenn das nicht klar war.
Citronen
6
Wird npm startdie Produktion nicht aus Mangel an Nodemon scheitern?
Ripper234
2
npm run startnichtnpm start
M. Dhaouadi
1
Ich bin ein Anfänger mit npm. Ich verstehe nicht, warum wir das Startskript angeben müssen, während wir nodemon sofort verwenden können. Ich installiere nodemon einfach mit npm und benutze es direkt ohne Angabe eines Skripts und es funktioniert perfekt.
Hokhy Tann
@ M.Dhaouadi npm startist ein Alias fürnpm run start
George
16
Ich habe eine TypeScript-Datei mit dem Namen "server.ts". Die folgenden npm-Skripte konfigurieren Nodemon und npm, um meine App zu starten und auf Änderungen an TypeScript-Dateien zu überwachen:
Ich habe bereits Nodemon für Abhängigkeiten. Wenn ich es ausführe npm start, fordert es Nodemon auf, seine Dateien mithilfe des -eSchalters zu überwachen , und ruft dann das myappnpm-Skript auf, bei dem es sich um eine einfache Kombination aus dem Transpilieren der Typoskriptdateien und dem Starten der resultierenden server.js handelt. Wenn ich die TypeScript-Datei ändere, -egeschieht aufgrund des Wechsels der gleiche Zyklus und neue .js-Dateien werden generiert und ausgeführt.
Ich verwende Nodemon Version 1.88.3 in meinem Node.js-Projekt. Informationen zur Installation von Nodemon finden Sie unter https://www.npmjs.com/package/nodemon .
Überprüfen Sie Ihre package.json, um festzustellen, ob sich "scripts" folgendermaßen geändert hat:
"scripts": {
"dev": "nodemon server.js"
},
server.jsIst mein Dateiname, können Sie einen anderen Namen für diese Datei wie verwenden app.js.
Führen Sie danach Folgendes auf Ihrem Terminal aus: npm run dev
Nodemon gibt Ereignisse bei jeder Zustandsänderung aus. Starten, Absturz neu starten usw. Sie können eine Nodemon-Konfigurationsdatei (nodemon.json) wie folgt hinzufügen:
Dies hängt von den Arten Ihrer Nodemon-Installation ab. Wenn Sie Nodemon mithilfe von Befehlen ( npm install nodemon --globaloder npm install nodemon -g) global installieren , müssen Sie in Ihrer Datei package.json kein Skript für Nodemon angeben . Wenn Sie nur den Befehl ausführen, nodemon index.jswird Ihr Projekt ausgeführt.
Wenn Sie Nodemon jedoch lokal per Befehl installieren, müssen npm install nodemonSie das Skript angeben. Wenn Sie es nennen , wie beginnen dann npm run startoder npm startden Server auslösen zu laufen.
// Absolutely no need for global installation"scripts": {
"start": "nodemon index.js"
}
Wenn Sie nodemonglobal installiert haben , nodemonwird das startSkript automatisch ausgeführt, wenn Sie es einfach in Ihrem Projekt ausführen package.json.
Antworten:
Dies ist ein einfacher Befehl dafür
quelle
npm start
aber der Knotenserver wird für mich nicht gestartet. Wie würde er wissen, wo sich server.js befindet?Im Paket json:
{ "name": "abc", "version": "0.0.1", "description": "my server", "scripts": { "start": "nodemon my_file.js" }, "devDependencies": { "nodemon": "~1.3.8", }, "dependencies": { } }
Dann können Sie vom Terminal aus verwenden
npm start
Nodemon-Installation: https://www.npmjs.com/package/nodemon
quelle
npm start
die Produktion nicht aus Mangel an Nodemon scheitern?npm run start
nichtnpm start
npm start
ist ein Alias fürnpm run start
Ich habe eine TypeScript-Datei mit dem Namen "server.ts". Die folgenden npm-Skripte konfigurieren Nodemon und npm, um meine App zu starten und auf Änderungen an TypeScript-Dateien zu überwachen:
"start": "nodemon -e ts --exec \"npm run myapp\"", "myapp": "tsc -p . && node server.js",
Ich habe bereits Nodemon für Abhängigkeiten. Wenn ich es ausführe
npm start
, fordert es Nodemon auf, seine Dateien mithilfe des-e
Schalters zu überwachen , und ruft dann dasmyapp
npm-Skript auf, bei dem es sich um eine einfache Kombination aus dem Transpilieren der Typoskriptdateien und dem Starten der resultierenden server.js handelt. Wenn ich die TypeScript-Datei ändere,-e
geschieht aufgrund des Wechsels der gleiche Zyklus und neue .js-Dateien werden generiert und ausgeführt.quelle
Ich verwende Nodemon Version 1.88.3 in meinem Node.js-Projekt. Informationen zur Installation von Nodemon finden Sie unter https://www.npmjs.com/package/nodemon .
Überprüfen Sie Ihre package.json, um festzustellen, ob sich "scripts" folgendermaßen geändert hat:
"scripts": { "dev": "nodemon server.js" },
server.js
Ist mein Dateiname, können Sie einen anderen Namen für diese Datei wie verwendenapp.js
.Führen Sie danach Folgendes auf Ihrem Terminal aus:
npm run dev
quelle
Verwendung
-exec
:"your-script-name": "nodemon [options] --exec 'npm start -s'"
quelle
nodemon [options] --exec 'npm start -s'
wenn Sie es über die Kommandozeile tun möchten.Ändern Sie zuerst Ihre package.json- Datei.
"scripts": { "start": "node ./bin/www", "start-dev": "nodemon ./app.js" },
Führen Sie danach den Befehl aus
quelle
app.js
umgehen Sie alles, was./bin/www
tut ...In der Datei package.json. Datei wie folgt ändern
"scripts":{ "start": "node ./bin/www", "start-dev": "nodemon ./app.js" },
und dann npm run start-dev ausführen
quelle
Nodemon gibt Ereignisse bei jeder Zustandsänderung aus. Starten, Absturz neu starten usw. Sie können eine Nodemon-Konfigurationsdatei (nodemon.json) wie folgt hinzufügen:
{ "events": { "start": "npm run *your_file*" } }
Weitere Informationen finden Sie unter Nodemon-Ereignisse - Führen Sie Aufgaben beim Starten, Neustarten, Absturz und Beenden des Servers aus .
quelle
Wenn global installiert dann
"scripts": { "start": "nodemon FileName.js(server.js)", },
Stellen Sie sicher, dass Sie
nodemon
global installiert haben :Wenn Sie ein Windows-Benutzer sind, stellen Sie schließlich sicher, dass die Sicherheitsbeschränkung von Windows PowerShell aktiviert ist .
quelle
Sie können nodemon auch global für die häufige Verwendung installieren:
npm i nodemon -g
odersudo npm i nodemon -g
Bearbeiten Sie dann Ihre package.json:
"scripts": { "start": "node index.js", "dev": "nodemon index.js" },
Im Allgemeinen gibt 'dev' die Verwendung in der Entwicklung an ( npm run dev ).
quelle
Dies hängt von den Arten Ihrer Nodemon-Installation ab. Wenn Sie Nodemon mithilfe von Befehlen (
npm install nodemon --global
odernpm install nodemon -g
) global installieren , müssen Sie in Ihrer Datei package.json kein Skript für Nodemon angeben . Wenn Sie nur den Befehl ausführen,nodemon index.js
wird Ihr Projekt ausgeführt.Wenn Sie Nodemon jedoch lokal per Befehl installieren, müssen
npm install nodemon
Sie das Skript angeben. Wenn Sie es nennen , wie beginnen dannnpm run start
odernpm start
den Server auslösen zu laufen.// Absolutely no need for global installation "scripts": { "start": "nodemon index.js" }
quelle
Wenn Sie
nodemon
global installiert haben ,nodemon
wird dasstart
Skript automatisch ausgeführt, wenn Sie es einfach in Ihrem Projekt ausführenpackage.json
.Zum Beispiel:
"scripts": { "start": "node src/server.js" },
Aus der Nodemon-Dokumentation :
quelle
Im Paket
json
:"scripts": { "start": "node index", "dev": "nodemon index" }, "devDependencies": { "nodemon": "^2.0.2" }
Und im Terminal für die Entwicklung:
Und um den Server regelmäßig zu starten:
quelle
Um eine globale Installation zu vermeiden, fügen Sie Nodemon als Abhängigkeit hinzu und ...
package.json
"scripts": { "start": "node ./bin/www", "start-dev": "./node_modules/nodemon/bin/nodemon.js ./bin/www" },
quelle