Ich sehe Anweisungen zum Installieren eines Pakets mit beiden
npm install <package_name>
oder
npm install <package_name> --save
oder
npm install <package_name> --save-dev
Was ist der Unterschied zwischen diesen Optionen?
quelle
Ich sehe Anweisungen zum Installieren eines Pakets mit beiden
npm install <package_name>
oder
npm install <package_name> --save
oder
npm install <package_name> --save-dev
Was ist der Unterschied zwischen diesen Optionen?
npm install <package_name> --save
Installiert das Paket und aktualisiert die Abhängigkeiten in Ihrer package.json. Da diese Frage gestellt wurde, wurde npm geändert --save
, sodass dies die Standardoption ist, sodass Sie --save
die Abhängigkeiten nicht aktualisieren müssen.
npm install <package_name> --no_save
Installiert das Paket, aktualisiert jedoch nicht die in Ihrer package.json aufgeführten Abhängigkeiten.
npm install <package_name> ---save-dev
aktualisiert das devDependencies
in Ihrem Paket. Diese werden nur für lokale Tests und Entwicklungen verwendet.
Weitere Informationen finden Sie unter https://docs.npmjs.com/getting-started/using-a-package.json .
Für die npm-Installation sind 3 exklusive, optionale Flags erforderlich, mit denen die Paketversion in Ihrem Hauptpaket gespeichert oder aktualisiert wird.
-S, --save
: Paket wird in Ihren Abhängigkeiten angezeigt.-D, --save-dev
: Das Paket wird in Ihren devDependencies angezeigt.-O, --save-optional
: Das Paket wird in Ihren optionalen Abhängigkeiten angezeigt.Wenn Sie eine der oben genannten Optionen verwenden, um Abhängigkeiten in Ihrer package.json zu speichern, gibt es ein zusätzliches optionales Flag:
-E, --save-exact
: Gespeicherte Abhängigkeiten werden mit einer genauen Version konfiguriert, anstatt den Standard-Semverbereichsoperator von npm zu verwenden. Wenn Sie eine npm-shrinkwrap.json haben, wird diese ebenfalls aktualisiert.<scope>
es ist optional. Das Paket wird aus der Registrierung heruntergeladen, die dem angegebenen Bereich zugeordnet ist. Wenn dem angegebenen Bereich keine Registrierung zugeordnet ist, wird die Standardregistrierung angenommen. Siehe npm-scope.Hinweis: Wenn Sie das @ -Symbol nicht in Ihren Bereichsnamen aufnehmen, interpretiert npm dies stattdessen als GitHub-Repository (siehe unten). Auf Bereichsnamen muss auch ein Schrägstrich folgen.
Beispiele:
Hinweis: Wenn eine Datei oder ein Ordner mit dem Namen vorhanden ist
<name>
im aktuellen Arbeitsverzeichnis , wird versucht, diese zu installieren, und es wird nur versucht, das Paket nach Namen abzurufen, wenn es nicht gültig ist.(aus offiziellen Dokumenten) https://docs.npmjs.com/cli/install
quelle
--save
Option scheint zwar weiterhin zu funktionieren, ist jedoch nicht mehr erforderlich. Die Pakete werden jetzt standardmäßig in Abhängigkeiten gespeichert . Die Logik ist jetzt umgekehrt - wenn Sie Ihr Paket nicht speichern möchten, müssen Sie angeben--no-save
Das
--save
Flagge erfüllt keinen Zweck mehr.Wie in den anderen Antworten bereits erwähnt, hat das
--save
Flag zuvor die Abhängigkeiten in der Projektdatei aktualisiertpackage.json
, jedochnpm install
enthält jetzt standardmäßig diese Funktionalität.Wenn Sie verhindern möchten, dass
npm install
Abhängigkeiten gespeichert werden, müssen Sie an dieser Stelle das--no-save
Flag verwenden.Vielen Dank an Coruscate5 für die Erwähnung in ihrem Kommentar .
Weitere Informationen in der Dokumentation zur npm-Installation :
quelle