代码之家  ›  专栏  ›  技术社区  ›  joedotnot

如何在命令行中直接运行node/babel脚本?

  •  5
  • joedotnot  · 技术社区  · 8 年前

    我的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启动 ,根据上面定义的开始脚本。这里没有问题。

    我的问题是如何在命令行中直接运行cmd,可以吗? 类似于:

    npm run babel node--预设env app.js

    5 回复  |  直到 7 年前
        1
  •  10
  •   Rodrigo Mata    8 年前

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

    编辑

    按操作要求更新。

        2
  •  8
  •   Viktor Vlasenko    8 年前

    您可以使用 npx :

    npx babel-node --presets env app.js

        3
  •  1
  •   Ashraful Alam    8 年前

    全局安装@babe/node-

    npm i -g @babel/node
    

    然后babel node命令在终端中可用。所以,你可以跑-

    babel-node --presets env app.js
    

    顺便说一句,它应该只在开发人员环境中使用,绝不推荐用于生产环境,因为它不必要地太重,内存使用率很高。

        4
  •  0
  •   Mat Lipe    7 年前

    Babel节点有一个 bin 已注册,以便在安装时在 node_modules/.bin 目录。

    您可以通过键入来运行它。

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

    它完成的事情和长的一样 node 或者替补队员 npx 版本。

        5
  •  0
  •   Michael Cole    7 年前

    伟大的古格利麻瓜!这比原本应该的要困难得多。

    在这里看到 docs . 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 
    
    推荐文章