web-dev-qa-db-de.com

wie kann ich node/babel script direkt in der Kommandozeile ausführen?

Mein package.json sieht so aus:

{
  "name": "99-nodetest",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "babel-node --presets env app.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "babel-cli": "^6.26.0",
    "babel-preset-env": "latest"
  }
}

Das js-Skript, das ich ausführen möchte, ist app.js. Ich kann es nicht direkt mit node app.js ausführen, da app.js eine neue Sprachsyntax enthält.

Also muss ich es mit Hilfe von npm start durch babel laufen lassen, wie in dem oben definierten Startskript. Keine Probleme hier.

Meine Frage ist, wie man die cmd direkt in der Kommandozeile ausführt. Kann das gemacht werden?

npm run babel-node --presets env app.js

3
joedotnot

node ./node_modules/babel-cli/bin/babel-node.js --presets env app.js

EDIT

Aktualisiert wie vom OP gefordert.

9
Rodrigo Mata

Sie können npm-Pakete mit npx ausführen:

npx babel-node --presets env app.js

3
Viktor Vlasenko

@Babe/node global installieren-

npm i -g @babel/node

der Befehl babel-node wird dann in Ihrem Terminal verfügbar. Du kannst also laufen -

babel-node --presets env app.js

Übrigens, es sollte nur in dev-Umgebungen verwendet werden, es sollte jedoch nie für die Produktion empfohlen werden, da es bei einer hohen Speicherauslastung unnötig hoch ist.

1
Ashraful Alam

Der Babel-Knoten hat eine bin registriert, so dass bei der Installation eine ausführbare Datei im node_modules/.bin-Verzeichnis erstellt wird.

Sie können es einfach ausführen, indem Sie es eingeben.

node_modules/.bin/babel-node --presets env app.js

Dies bewirkt dasselbe wie die längere node- oder die alternative npx-Version.

0
Mat Lipe

Große Gugley Mugleys! Das war viel schwieriger als es hätte sein sollen.

Siehe hier für docs . TLDR;

Babel> Version 7.0 muss in Ihrem package.json ausgeführt werden, um von der Befehlszeile ausgeführt zu werden.

npm install --save-dev @babel/core @babel/cli @babel/preset-env @babel/node 

npx babel-node --presets @babel/preset-env imports/test.js 
0
Michael Cole