wake-up-neo.net

SyntaxError: Deklarationen im Blockbereich (let, const, function, class) werden außerhalb des strikten Modus beim Installieren des SASS-Knotenpakets noch nicht unterstützt

Versuch, LESS/SASS zu installieren. Und diesen Fehler nach der Installation von node.js in Linux 16.04 ..__ bekommen. LESS-Compiler installiert und npm aktualisiert, um die Installation von SASS fortzusetzen.

Folge diesen Schritten:

  1. Sudo apt-get install node.js
  2. Sudo apt-get Update 
  3. Sudo apt-get Upgrade
  4. Sudo apt-get installieren
  5. npm - Knotenpaketmanager
  6. Sudo npm install -g less
  7. Sudo npm install node-sass -g (funktioniert nicht)
  8. ausprobiert: Sudo gem install sass

Dann zeigte ich diesen Fehler:

$Sudo npm update npm -g 
/usr/local/lib/node_modules/npm/bin/npm-cli.js:82
      let notifier = require('update-notifier')({pkg})
      ^^^

Fehlermeldung

SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Function.Module.runMain (module.js:442:10)
at startup (node.js:136:18)
at node.js:966:3

Seitdem kann ich grundsätzlich nichts mehr. Führen Sie nicht einmal einen einfachen Befehl wie npm -v aus. Ich werde immer wieder das gleiche Problem bekommen.

Kannst du mir bitte Helfen?

3
user3550117

Es ist ein gemeldeter Fehler auf npm, welche Versionen über 6.0.0 nicht unterstützen Node Versionen unter Node 6.0.0. Wenn Sie den Knoten -v ausführen, besteht der starke Verdacht, dass Ihre Node Version älter ist als Node 6.0.0

Ich hatte die gleichen Schwierigkeiten, als ich npm von Version 2.14.20 auf die neueste stabile Version mit NodeJS auf v4.4.0 hochrüstete. Das Problem ist, dass Sie Node nicht einfach aktualisieren können, da npm, wie Sie bereits erwähnt haben, vollständig blockiert ist.

Also habe ich Node mit der beschriebenen Methode entfernt in dieser Frage :

Ich habe das Verzeichnis gefunden, in dem Node Komponenten gespeichert wurden:

which node #this returned /path/bin/node 

Dann renne cd /path

Und irgendwann rennen

rm -r bin/node bin/node-waf include/node lib/node lib/pkgconfig/nodejs.pc share/man/man1/node.1

nachdem, node -v und npm -v würde nichts zurückgeben.

Also habe ich das Knotenpaket für Linux heruntergeladen: node-v8.11.3-linux-x64.tar.gz , es in/tmp gespeichert und entpackt:

tar --strip-components 1 -xzf /tmp/node-v8.11.3-linux-x64.tar.gz

Lauf npm -v und node -v erneut, um die Version zu überprüfen. Sie sollten beide aktualisiert werden.

Hoffe das hilft. :)

2
Pikuni

Da let und const die Syntax ECMAScript2015 ist, können Sie versuchen, die node.js auf eine neuere (oder neueste) Version zu aktualisieren, die die Es6-Syntax unterstützt. In der Fehlermeldung wurde "außerhalb des strikten Modus noch nicht unterstützt" angezeigt.

0
TCsss

Es sieht so aus, als würde das gesamte Paket gekickt und erneut installiert werden, gefolgt von der automatischen Entfernung vorheriger Pakete. Vielen Dank Jungs!

0
user3550117