当前位置: 首页 > 知识库问答 >
问题:

如何直接在命令行中运行节点/Babel脚本?

袁鸿达
2023-03-14

我的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包含新的语言语法。

因此,我必须按照上面定义的启动脚本,使用NPMStart通过babel运行它。这里没有问题。

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

npm运行babel节点——预设环境应用程序。js

共有3个答案

许鸿志
2023-03-14

伟大的Gugley Mugleys!这比应该的要困难得多。

查看这里的文档。TLDR;

巴别塔

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

npx babel-node --presets @babel/preset-env imports/test.js 
马和硕
2023-03-14

节点/节点\模块/babel cli/bin/babel节点。js——预设环境应用程序。js

羊舌自强
2023-03-14

可以使用npx执行npm包二进制文件。

由于Babel 7始终解析相对于本地项目文件夹的插件和预设,因此您必须在项目中本地安装@Babel/preset env

npm i -D @babel/preset-env

之后,babel节点可以与npx一起运行,而无需安装到项目中:

npx -p @babel/core -p @babel/node babel-node --presets @babel/preset-env app.js

如果您在项目中安装@babel/节点npx将首选项目本地版本。

对于Babel 6,可使用以下命令:

npx babel-node --presets env app.js
 类似资料:
  • 问题内容: 我的package.json看起来像: 我要运行的js脚本是app.js。我无法使用 节点app.js 直接运行它,因为app.js包含新的语言语法。 因此,我必须按照上面定义的启动脚本,使用 npm start 通过babel运行它。这里没有问题。 我的问题是如何直接在命令行中运行cmd,可以做到吗?类似于: npm运行babel-node –presets env app.js 问

  • 我无法在NodeJS应用程序中使用< code>exec运行Conda命令。 我收到以下错误: /bin/sh: /用户/用户名/桌面/存储库/项目/XYZ: 是一个目录 命令未发现错误:您的 shell 未正确配置为使用“conda 激活”。要初始化您的 shell,请运行 目前支持的shell有:-bash-fish-tcsh-xonsh-zsh-powershell 请参阅“conda in

  • 问题内容: 我有一个具有某些功能的脚本。 我可以直接从命令行运行功能之一吗? 像这样吗 问题答案: 如果脚本仅定义函数,而不执行其他任何操作,则可以先使用or 命令在当前shell的上下文中执行脚本,然后简单地调用函数。请参阅以获取更多信息。

  • 我最近遵循了一个关于网络抓取的教程,作为该教程的一部分,我必须执行(?)我在命令行中编写的脚本。现在脚本每小时运行一次,我不知道如何阻止它。 我想停止脚本运行。我试图删除代码,但脚本仍然运行。那我该怎么办?

  • 问题内容: 我正在创建节点命令行界面。它是全局安装的,并使用bin文件执行。 我计划在正在处理的文件的根目录下打开一个命令窗口,然后运行命令,但是由于返回节点包的目录,我无法确定当前的工作目录。最初,我假设由于代码是使用批处理文件作为包装器执行的(这就是bin文件可以在开始时没有节点的情况下执行的方式),所以这是不可能的,但是coffee- script可以做到这一点。我看了看咖啡脚本的源代码,但

  • 我正在创建一个节点命令行界面。它是全局安装的,并使用一个bin文件来执行。 我计划在我正在处理的文件的根目录中打开一个命令窗口,然后只运行命令,但是我无法确定当前的工作目录,因为返回节点包的目录。我最初假设,由于代码是使用批处理文件作为包装器执行的(这就是bin文件在开始时可以在没有node的情况下执行的方式),那么这是不可能的,但是咖啡脚本设法做到了这一点。我看了一下咖啡脚本源,但无法遵循它(经