In js Datei habe ich Import verwendet, anstatt zu erfordern
import co from 'co';
Ich habe versucht, es direkt von nodejs auszuführen, da der Import "Versandfunktionen" und Unterstützung ohne Laufzeitflag ( https://nodejs.org/en/docs/es6/ ) ist, aber ich habe einen Fehler erhalten
import co from 'co';
^^^^^^
SyntaxError: Unexpected token import
Dann habe ich versucht, Babel zu benutzen
npm install -g babel-core
npm install -g babel-cli
npm install babel-core //install to babel locally, is it necessary?
und laufen vorbei
babel-node js.js
Haben Sie immer noch den gleichen Fehler, unerwarteten Token-Import?
Wie könnte ich es loswerden?
npm i --save-dev babel-cli
Es wurde für mich.babelrc
:"transform-es2015-modules-commonjs"
.Antworten:
Aus dem Babel 6 Versionshinweise:
In meinem Setup habe ich die Voreinstellung es2015 installiert
oder mit Garn
und aktivierte die Voreinstellung in meiner .babelrc
quelle
babel-node
zusammen mites2015
undreact
Presets. Gleicher Fehler.Bis zur Implementierung von Modulen können Sie den Babel "Transpiler" verwenden, um Ihren Code auszuführen:
und dann
Wenn Sie nicht
--presets node6
eingeben möchten, können Sie die .babelrc-Datei speichern durch:Siehe https://www.npmjs.com/package/babel-preset-node6 und https://babeljs.io/docs/usage/cli/
quelle
babel-preset-node*
. In.babelrc
Gebrauch:{ "presets": [ ["env", { "targets": { "node": "current" } }] ] }
Unexpected token (37:12) 35 | const initialState = store.getState(); 36 | const componentHTML = renderToString( > 37 | <Provider store={store}> | ^ 38 | <RouterContext {...props} /> 39 | </Provider>, 40 | );
babel-core
,babel-polyfill
,babel-preset-es2015
.babelrc
Mit Inhalten erstellen :{ "presets": ["es2015"] }
import
Anweisung in der Haupteintragsdatei, verwenden Sie eine andere Datei zB:app.js
Ihre Haupteintrag Datei erforderlich istbabel-core/register
undbabel-polyfill
machen babel arbeitet separat an der ersten Stelle , bevor irgendetwas anderes. Dann können Sie eineapp.js
where-import
Anweisung verlangen .Beispiel:
index.js
app.js.
Es sollte funktionieren mit
node index.js
.quelle
babel-preset-es2015
ist jetzt veraltet und Sie erhalten eine Warnung, wenn Sie versuchen, die Lösung von Laurence zu verwenden.Verwenden Sie
babel-preset-env
stattdessen Folgendes, um dies mit Babel 6.24.1+ zum Laufen zu bringen:Fügen Sie
env
dann Ihren Voreinstellungen Folgendes hinzu.babelrc
:Weitere Informationen finden Sie in den Babel-Dokumenten .
quelle
Wenn Sie die Voreinstellung für React-Native verwenden, wird der Import akzeptiert
und legen Sie es in Ihre .babelrc-Datei
in Ihrem Projektstammverzeichnis
https://www.npmjs.com/package/babel-preset-react-native
quelle
Möglicherweise führen Sie nicht kompilierte Dateien aus. Fangen wir sauber an!
Erstellen Sie in Ihrem Arbeitsverzeichnis:
Eine package.json-Datei mit dem folgenden Objekt:
Eine Datei mit dem Namen ".babelrc" mit den folgenden Anweisungen:
{"presets": ["latest"]}
Zuletzt schreiben Sie Testcode in Ihre Datei src / index.js. In deinem Fall:
import co from 'co'.
Über Ihre Konsole:
npm install
npm run transpile-es2015
node lib/index.js
quelle
Unexpected token import
.babel
Befehl in Ihrem Suchpfad befindet. Hier ist eine kleine Variation.package.json
: {"scripts": {"transpile": "./node_modules/.bin/babel src -d lib"}, "devDependencies": {"babel-cli": "^ 6.24.1", "babel-preset-" env ":" ^ 1.6.0 "}}.babelrc
: {" presets ": [" env "]}Aktuelle Methode ist zu verwenden:
npm install --save-dev babel-cli babel-preset-env
Und dann rein in
.babelrc
Diese Installation Babel-Unterstützung für die neueste Version von js (es2015 und höher) Schauen Sie sich babeljs an
Vergessen Sie nicht
babel-node
, Ihre Skripte innerhalb derpackage.json
Verwendung hinzuzufügen , wenn Sie Ihre js-Datei wie folgt ausführen.Jetzt können Sie
npm populate yourfile.js
im Terminal.Wenn Sie Windows ausführen und einen internen oder externen Fehlerbefehl ausführen, der nicht erkannt wird, verwenden Sie den Knoten vor dem Skript wie folgt
node node_modules/babel-cli/bin/babel-node.js
Dann
npm run populate
quelle
Sie müssen babel- preset -env und nodemon zum Hot-Reload verwenden.
Erstellen Sie dann eine .babelrc-Datei mit folgendem Inhalt:
Erstellen Sie schließlich ein Skript in package.json:
Oder verwenden Sie einfach diese Boilerplate:
Boilerplate: node-es6
quelle
Als nächstes fügen Sie in der Datei package.json die Skripte "start" hinzu: "babel-node server.js"
und erstelle eine Datei für babel im Stammverzeichnis ".babelrc"
und führen Sie npm start im Terminal aus
quelle
Führen Sie die folgenden Schritte aus, um das Problem zu beheben:
1) Installieren Sie die CLI- und env-Voreinstellung
2) Erstellen Sie eine .babelrc- Datei
3) Konfigurieren Sie npm start in package.json
4) Starten Sie dann die App
quelle
Ich habe Folgendes getan, um das Problem zu beheben (ex.js-Skript)
Problem
Lösung
quelle
@jovi alles was Sie tun müssen, ist .babelrc Datei wie folgt hinzuzufügen:
und installieren Sie diese Plugins als devdependences mit npm.
dann versuchen Sie es erneut mit babel-node ***. js. hoffe das kann dir helfen.
quelle
In Ihrer App müssen Sie Ihre
require()
Module deklarieren , ohne das Schlüsselwort 'import' zu verwenden:Erstellen Sie dann eine .babelrc-Datei:
Dann müssen Sie in Ihrer gulpfile Ihre
require()
Module deklarieren :quelle