Heim >Web-Frontend >js-Tutorial >Warum erhalte ich in Node.js die Fehlermeldung „SyntaxError: Unexpected token import'?

Warum erhalte ich in Node.js die Fehlermeldung „SyntaxError: Unexpected token import'?

Linda Hamilton
Linda HamiltonOriginal
2024-12-19 04:41:53528Durchsuche

Why Am I Getting a

Node.js: Den unerwarteten Token-Importfehler verstehen

In Node.js tritt normalerweise der Fehler „SyntaxError: Unerwarteter Token-Import“ auf zeigt an, dass Sie versuchen, die Importsyntax in einer nicht unterstützten Umgebung zu verwenden.

Der Import Syntax ist eine Funktion von ES6 (ECMAScript 2015), mit der Sie Module importieren können. In Node.js wurde die Unterstützung für ES6-Modulimporte jedoch schrittweise mit der Veröffentlichung verschiedener Versionen eingeführt.

Unterstützung für ES6-Module in Node.js-Versionen

  • Knoten 13: Das Importieren von Modulen per Import ist stabil und wird vollständig unterstützt. Sie können .mjs-Dateien verwenden oder „type“: „module“ in der package.json-Datei festlegen.
  • Knoten 12: Ähnlich wie bei Knoten 13 können Sie Module mit .mjs-Dateien importieren oder mit „type“: „module“ in package.json. Allerdings müssen Sie Node mit dem Flag --experimental-modules ausführen.
  • Node 9: In Node 9 sind Modulimporte noch experimentell und erfordern die Verwendung von .mjs-Dateien und dem --experimental-modules Flag.

Vor Knoten 13, ES6-Modul Importe wurden nicht unterstützt

In Node.js-Versionen vor 13 wurde die Importsyntax nicht nativ unterstützt. Wenn dieser Fehler in früheren Versionen auftritt, liegt das daran, dass Sie versuchen, ein JavaScript-Konstrukt zu verwenden, das von der Laufzeitumgebung nicht unterstützt wird.

Fallback auf klassische Require-Anweisungen

Um dieses Problem zu beheben, müssen Sie wieder die klassische require-Anweisung zum Importieren von Modulen in Node.js-Versionen verwenden, die den Import nicht unterstützen. Zum Beispiel:

const express = require("express");

Babel für ES6/7-Funktionen verwenden

Wenn Sie ES6/7-Funktionen in Node.js verwenden möchten, können Sie Ihren Code kompilieren mit Babel. Babel ist ein JavaScript-Transpiler, der neuere JavaScript-Syntax in Code konvertiert, der mit älteren Umgebungen kompatibel ist. Hier ist ein Beispiel für die Kompilierung eines Servers mit Babel:

npm install --save-dev babel-cli babel-preset-env
npx babel-node script.js

Das obige ist der detaillierte Inhalt vonWarum erhalte ich in Node.js die Fehlermeldung „SyntaxError: Unexpected token import'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn