FEHLER in Modul 'Node-Sass' kann nicht gefunden werden


184

Konfiguration: macOS High Sierra, Version 10.13.2, Knoten: v8.1.2 npm: 5.0.3 Wenn ich npm start in meinem anglejs-Projekt ausführe, wird folgende Fehlermeldung angezeigt:

ERROR in Cannot find module 'node-sass'

Danach renne ich:

npm i node-sass

Jetzt bekomme ich diesen Fehler:

gyp: No Xcode or CLT version detected!
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1

Warum installiert npm Node-Sass nicht? Wie kann ich Node-Sass installieren?


30
runnpm install --save-dev node-sass
Ashok R

Antworten:


366

Hier ist die Lösung:

sudo npm install --save-dev  --unsafe-perm node-sass

Genießen!


21
Dies funktionierte, aber wenn jemand der Antwort hinzufügen könnte, warum dies funktioniert und das Einfache npm install node-sassnicht funktioniert, wäre es lehrreich.
Michael Potter

6
@AlexOnozor WIE FUNKTIONIERT DAS?
Bahman.A

13
Alles was ich brauche war, Node-Sass in Dev-Abhängigkeiten zu installierennpm install --save-dev node-sass
Subhash Diwakar

3
Das hat bei mir funktioniert. Dieses Problem trat auf, als ich Knoten 12 installierte (als ich ein neues Winkelprojekt in Winkel 8 startete). Meine Angular 6-App würde den Fehler über Node-Sass nicht mehr erstellen und auslösen. Alles behoben :)
Punkologe

10
--save-dev wird verwendet, damit Ihre App das Modul in lokalen node_modules finden kann. --save-dev fügt ein Paket zu devDependencies in package.json hinzu. --unsafe - perm wird verwendet, um Installationsskripte als root auszuführen. Verwenden Sie stattdessen nvm, um sudo zu vermeiden. --unsafe - perm wird wirklich nicht benötigt, da sudo bereits erwähnt wird. Der Befehl macht das Skript also grundsätzlich luftdicht, um Node-Sass um jeden Preis zu installieren.
Rahul Sharma

92
  1. Dieser Fehler ist für Node-Sass nicht vorhanden ... um dies zu lösen, möchten Sie nur den folgenden Befehl ausführen

npm install node-sass


36
als devDependencies hinzufügen npm install --save-dev node-sass.
Ashok R

5
Hilft nicht. Ich habe Node-Sass bereits ein Dutzend Mal installiert (was nicht einfach war), aber es schlägt immer noch fehl. Node-Sass ist eindeutig ein Problem.
mcv

2
@AshokR Können Sie bitte genau erläutern, WARUM das Hinzufügen als devDependencies das Problem löst? Wie wird es NICHT fehlschlagen, wenn es für die Herstellung bereitgestellt wird?
Amogh Natu

19

Lauf:

npm rebuild node-sass --force              

und es wird gut funktionieren.


2
Funktioniert leider nicht gut. Für mich (unter Windows) bleibt das Problem bestehen.
mcv

14

Laut der Github-Seite von node-sass variieren die unterstützten Versionen von node.js von Release zu Release.

https://github.com/sass/node-sass

Geben Sie hier die Bildbeschreibung ein

Beispiel: Überprüfen Sie die Version des Knotens, den Sie ausführen.

node -v
-> v12.0.0

Sie benötigen Node-Sass v4.12 +. also kannst du

npm install node-sass@4.12.0

oder wenn 4.12.0 die neueste ist

npm install node-sass@latest

( npm install node-sasswird in vielen Fällen die neueste Version installieren, aber denken Sie daran, dass nicht immer die neueste Version installiert wird (in diesem Beispiel 4.12.0), wenn die Abhängigkeit in package.json wie folgt geschrieben ist: ^ 3.0.0, ~ 4.11.0) Was ist der Unterschied? zwischen Tilde (~) und Caret (^) in package.json?

Schließlich ist die Verwendung von sudo mit npm keine gute Praxis. Bitte beziehen Sie sich auf diesen Artikel. https://medium.com/@ExplosionPills/dont-use-sudo-with-npm-still-66e609f5f92


Diese Lösung hat bei mir funktioniert ... Ich habe ein älteres 2010 Macbook, OSX 10.12, verwendet und die hier beschriebene Node-Sass-Version gelöst
Theuns Alberts

"npm install node-sass@4.12.0" - mein Problem wurde behoben - danke
gavgrif

13

Tun npm uninstall node-sassund dann npm i node-sassnicht für mich gearbeitet.

Lösung für mich funktioniert ist npm install --save-dev node-sass.

Happy Coding ..


1
Danke @ShortlyFD :) :) .. Die Antwort wurde aktualisiert.
Bandham Manikanta

6

Es hat bei mir funktioniert ...

sudo npm rebuild node-sass --force

3
Geben Sie eine Erklärung, damit die Lösung leicht zu verstehen ist
Harsha Biyani,

4

Node-Sass wird nicht installiert und dies kann einer von vielen Gründen sein

Sie haben es nicht installiert

npm install node-sass --save-dev

Sie haben einen Berechtigungsfehler

sudo npm install --save-dev  --unsafe-perm node-sass

Sie hatten ein Speicherproblem, weil versucht wurde, es zu erstellen (erstellt aus C-Code in Ihrer Plattform). Dies gilt für einige Plattformen und Knotenversionen

node --max_old_space_size=8000 $(which npm) install node-sass --save-dev

Ihre Knoten- und npm-Versionen sind nicht kompatibel, was höchstwahrscheinlich zu einem Fehler im Erstellungsprozess geführt hat.

Verwenden Sie in diesem Fall n oder nvm, um sicherzustellen, dass Sie dieselbe Version in der neuen und ursprünglichen Umgebung haben, in der sie funktioniert hat, da dies normalerweise durch die Verwendung unterschiedlicher Versionen in unterschiedlichen Umgebungen geschieht


4

Das hat bei mir funktioniert. Ich deinstalliere zuerst node-sass. Dann installieren Sie es wieder.

npm deinstallieren node-sass
npm install --save-dev node-sass


3

Es ist für mich fehlgeschlagen, weil ich die neueste Version von Node (12.7.0) verwendet habe. Dann musste ich die neueste Version von explizit installieren node-sassmit:

npm install node-sass@4.12.0


2

Es gibt ein Problem beim Herunterladen von npm-Abhängigkeiten aufgrund Ihres Netzwerks. Versuchen Sie, die npm-Abhängigkeiten im offenen Netzwerk herunterzuladen. Sie werden kein Problem bekommen. Ich bin auch mit diesem ähnlichen Problem konfrontiert und endgültig gelöst.

Verwenden Sie die folgenden Befehle: npm install (es werden alle Abhängigkeiten heruntergeladen) npm start, um die Winkelanwendung zu starten


@TinySkillz Ich denke, er erwähnt No-Proxy-Netzwerke
Akhil S Kamath

2

npm install node-sass erledigt den Job in den meisten Fällen, da das fehlende sass npm-Abhängigkeitsmodul nicht vorhanden ist oder die vorherige abgestürzte Version überschrieben wird.

Für Mac-Benutzer verwenden Sie sudovor den obigen Befehlen.

Auf Windows-Computern npm rebuild node-sass --forcefunktionieren einige Benutzer möglicherweise nicht, da im Wesentlichen gesagt wird: "Bitte zwingen Sie npm, das Sass-Knotenmodul für mich neu zu erstellen." Es wird nicht funktionieren, da dieses Modul nicht existiert.

Bei jeder npm installErstinstallation wurde das sass-Modul nicht installiert, weshalb dieses Problem auftritt.


2

Ich habe die Knotenversion auf meinem lokalen Computer überprüft v10.11.0.

Als ich dann meinen Entwicklungscomputer überprüfte, auf dem der Fehler auftrat, hatte er eine Knotenversion V.10.8.0 .

Das Upgrade von Node auf v10.11.0in meinem Entwicklungscomputer hat das Problem behoben.

Hoffe das hilft.


1
Dies ist die Antwort, die in meinem Fall funktioniert hat. Vielen Dank.
Adesh Kumar

2

In meinem Fall musste ich auch durchführen:

npm install sass-loader

Um das Problem zu lösen


2

Ich habe dieses Problem behoben, ohne Node-Sass mit diesem Befehl zu installieren:

npm install node-sass@4.12.0 --no-save --unsafe-perm

2

Versuchen Sie, sudo npm install node-sass@4.12.0ob Ihre Knotenversion 12 ist.


1

Wenn du läufst

npm install node-sass

und es funktioniert immer noch nicht. Denken Sie daran, die Berechtigung in einen Ordner zu ändern


1

Einer der Fälle ist, dass der Prozess nach der Installation fehlschlägt. Unmittelbar nach der Installation von node-sass wird das Skript nach der Installation ausgeführt. Für diesen Prozess sind Python und ein C ++ - Builder erforderlich. Das Protokoll 'gyp: Keine Xcode- oder CLT-Version erkannt!' Vielleicht, weil es keinen C ++ - Builder finden konnte. Versuchen Sie also, Python und einen beliebigen C ++ - Builder zu installieren, und fügen Sie dann ihre Verzeichnisse in Umgebungsvariablen ein, damit npm sie finden kann. (Ich komme aus Windows)


1

Ich bin auf diesen Fehler gestoßen, als ich das integrierte Git-Terminal von Microsoft Visual Studio Code verwendet habe. Aus irgendeinem seltsamen Grund erlaubte mir VS-Code nicht, 'node-sass' zu installieren. Dann habe ich 'Git Bash' (das mit git installiert wurde) verwendet und den folgenden Befehl ausgeführt: npm install node-sass Es hat bei mir funktioniert. Ich weiß nicht warum und wie es funktioniert hat. Wenn jemand eine Erklärung hat, lass es mich wissen.


Ich vermute, es liegt daran, dass Sie als Administrator
Punkologe

1

Ich hatte ein ähnliches Problem, als ich versuchte, ein Projekt auszuführen. Zuerst habe ich die aktuelle Version deinstalliert

npm uninstall node-sass

Dann habe ich auf die neueste Version mit neu installiert

npm install node-sass

1

npm install --save-dev --unsafe-perm node-sass

Dies wird Magie tun, Sie können es mit Sudo verwenden


1

Mein Problem war, dass ein Webfilter mir nicht erlaubte, das Node-Sass-Paket herunterzuladen , als ich den Befehl ausführte

npm i

Nach der Installation der Windows Build Tools

npm i -g windows-build-tools

es baut node-sassvon selbst auf und jetzt kann ich es benutzen.

PS: Ich habe auch schon Python 2.7.17 installiert, aber ich denke nicht, dass das geholfen hat.


0

Ich habe auch diesen Fehler konfrontiert. Keine der oben genannten Methoden funktioniert bei mir. Bitte folgen Sie diesem, wie es für mich funktioniert hat.

Für die Installation von Node-Sass in Ubuntu 16 über npm: -

Sie können mit der Version npm 5.2.0 installieren

Wenn Sie nvm verwenden: -

nvm install 8.2.1
nvm use 8.2.1
npm install node-sass

Wenn Sie npm separat verwenden, aktualisieren oder downgraden Sie die npm-Version auf 5.2.0

npm install node-sass

0

Sie sollten versuchen, das von generierte Protokoll zu überprüfen npm install.

Ich habe die gleichen Probleme gehabt und den Fehler gefunden, dass python2 nicht im Pfad (Umgebungsvariable) gefunden wird.

Nach der Installation von Python hat alles gut funktioniert.


0

Ein Upgrade auf die neueste Version von nodeJS hat mein Problem gelöst


0

Ich habe dieses Problem durch die Installation der Knotenversion 10.16.10 behoben .


0

Ich hatte den gleichen Fehler beim Installieren von Abhängigkeiten in Angular . Ich habe die oben genannten Techniken ausprobiert, aber keine davon hat funktioniert, bis ich sie gelöscht habe, package-lock.jsondie zuvor beim Ausführen von Node v11 erstellt wurden .

Jetzt verwende ich Node v12, und so wurde ich gelöst.

Ich wiederhole, wenn Sie es package-lock.jsongelöscht haben, Datei und dann Abhängigkeiten installieren.



0

Sie müssen node-sass im dev-Abschnitt von package.json installieren

npm install --unsafe-perm node-sass --save-dev  

0

Es scheint ein Problem mit der Version zu geben "node-sass": "4.5.3". Versuchen Sie, auf die neueste Version zu aktualisieren. ^ "node-sass": "^4.5.3"Zum Beispiel könnten Sie versuchen, für die neueste Version hinzuzufügen


-3

Führen Sie diesen Befehl einfach im Terminal aus. Die neueste Version von Node-Sass wird installiert

npm install node-sass

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.