Generatoren sind für die globale Installation ausgelegt. Andernfalls müssen Sie immer den Generator installieren, den Sie in jedem Projekt verwenden möchten, was unnötig schmerzhaft ist. Außerdem sehen Sie nicht das schöne yo
Menü, in dem alle verfügbaren Generatoren aufgelistet sind (es sei denn, Sie installieren sie alle lokal):
Einrichten von npm für die globale Installation
Wie können wir npm dazu bringen, Pakete global zu installieren? Wie Sie richtig gesagt haben, sollten Sie niemals yo
mit Sudo laufen . Es gibt viele verschiedene Lösungen für dieses Problem und Sie können Stunden damit verbringen, ihre Vor- und Nachteile religiös zu diskutieren.
Ich persönlich mag es nicht, meine Benutzerpakete im globalen /usr/
Ordner zu installieren . /usr/
ist für Software, die von allen Benutzern auf dem Computer gemeinsam genutzt wird. Auch wenn nur der Computer verwendet wird, gibt es gute Gründe, die Gestaltung der Unix-Dateisystemhierarchie zu respektieren. Zum Beispiel, wenn Sie sich an einem Punkt entscheiden, Ihre gesamte Knoteninstallation zu löschen.
Meine bevorzugte Möglichkeit npm
, Pakete global zu installieren, ohne auszubrechen,$HOME
besteht darin, ein lokales Knotenpräfix festzulegen . Das ist so einfach wie Laufen
echo 'prefix = ~/.node' >> ~/.npmrc
in Ihrer lokalen Shell. Danach möchten Sie Ihren $ PATH anpassen, um auf das neue Installationsziel für ausführbare Knoten des globalen Knotens zu verweisen, indem Sie die Konfiguration Ihrer bevorzugten Shell anpassen. ZB durch Hinzufügen
export PATH="$PATH:$HOME/.node/bin"
zu deinem ~/.bashrc
. Danach können Sie npm install -g generator-angular
problemlos ohne sudo ausführen , ohne auf Berechtigungskonflikte zu stoßen. Wenn etwas völlig kaputt ist und Sie von vorne beginnen möchten, müssen Sie lediglich Ihr ~/.node
Verzeichnis entfernen .
yo angular
?