Как запустить скрипт node / babel прямо в командной строке?
Мой package.json выглядит так:
{
"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"
}
}
Скрипт js, который я хочу запустить, это app.js. Я не могу запустить его напрямую, используя узел app.js, потому что app.js содержит новый синтаксис языка.
Таким образом, я должен запустить его через babel, используя npm start, в соответствии со сценарием запуска, определенным выше. Здесь нет проблем.
У меня вопрос, как запустить cmd непосредственно в командной строке, это можно сделать? что-то похожее:
npm run babel-node --presets env app.js
3 ответа
node ./node_modules/babel-cli/bin/babel-node.js --presets env app.js
РЕДАКТИРОВАТЬ
Обновлено в соответствии с просьбой OP.
Вы можете выполнять двоичные файлы пакетов npm с помощью npx
:
npx babel-node --presets env app.js
Великолепные магли! Это было намного сложнее, чем следовало.
Смотрите здесь для документов. TLDR;
Babel> версия 7.0 должна идти в твоем package.json
бежать из командной строки.
npm install --save-dev @babel/core @babel/cli @babel/preset-env @babel/node
npx babel-node --presets @babel/preset-env imports/test.js
Установите @babe/node глобально
npm i -g @babel/node
тогда команда babel-node станет доступной в вашем терминале. Итак, вы можете запустить -
babel-node --presets env app.js
Кстати, его следует использовать только в среде разработки, никогда не рекомендовать для производства, так как это излишне тяжело с высоким использованием памяти.
Вавилонский узел имеет bin
зарегистрирован, поэтому исполняемый файл генерируется при установке внутри node_modules/.bin
каталог.
Вы можете запустить его, просто набрав.
node_modules/.bin/babel-node --presets env app.js
Который выполняет то же самое, что и дольше node
или альтернативный npx
версии.
Вы можете запустить app.js
файл из node
рассказывая это о babel-node
первый:
node ./node_modules/.bin/babel-node app.js
со следующими .babelrc
файл в корневом проекте
{"presets": ["@babel/preset-env"]}