如何在 Node CLI 程序中使用 babel?

2024-05-03

我正在 Node 中编写一个小型 CLI 工具,并希望使用 ES6 来实现。

index.js 看起来像:

#!/usr/bin/env node

require('babel/register');
module.exports = require('./app');

我可以轻松地使用它调用

$ node index.js --foo some --bar thing

In my package.json我声明如下:

  "bin": {
    "my-tool": "./index.js"
  }

当安装和执行这个时,babel似乎没有像我得到的那样工作:

/usr/lib/node_modules/my-tool/app.es6:1
(function (exports, require, module, __filename, __dirname) { import yargs fro
                                                          ^^^^^^
SyntaxError: Unexpected reserved word

我在这里缺少什么?


require 钩子更多的是用于本地开发而不是生产用途。理想情况下,您应该在分发包之前进行预编译。你正在遇到https://github.com/babel/babel/issues/1889 https://github.com/babel/babel/issues/1889.

您需要明确告诉寄存器挂钩不要忽略您的应用程序。

require('babel/register')({
  ignore: /node_modules\/(?!my-tool)/
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Node CLI 程序中使用 babel? 的相关文章

随机推荐

  • 何时使用 Box> 或 Vec>?

    什么时候设计一个嵌套的数据结构才有意义 Box and a Vec 或相反亦然 似乎在大多数情况下 您想在堆上存储多个固定大小的东西 Box是多余的 因为它唯一的 作用是堆分配一个 单个值 以及一个正常的Vec已经在堆上分配其存储空间 背景
  • Spring Boot 文件上传错误请求 400

    你好 我正在使用 Spring Boot 和 AngularJs 编写一个 Web 应用程序 需要一个简单的文件上传 但目前无法正常工作 我已经读到 当 mvc 依赖项存在时 Spring Boot 应该自动配置分段上传本身 从 https
  • 如何使用 Node/Express 后端的 Angular 5 HttpClient get 方法下载 excel (xlsx) 文件?

    我的 Nodejs 服务器上的目录中有一个 excel 文件 文件的路径是 api uploads appsecuritydesign output appsecdesign xlsx 单击 Angular 5 组件中的按钮后 我只是尝试使
  • Magento,翻译验证错误消息

    我已经成功创建了原型验证的新规则 现在我需要翻译错误消息 位置 Javascript 中的字符串 但是 我只能翻译所有消息 我的新自定义消息似乎无法翻译 我该如何改变这个 也许你需要一个jstranslator xml里面的文件etc fo
  • Azure SQL 依赖项(基于 EF Core 3.1.7)未出现在 App Insights 的应用程序地图中

    我们有基于 net Core 3 1的Azure功能 我们使用最新版本的 EntityFrameworkCore 它连接到 Azure SQL 来存储 检索 查询数据 有时我们可以在应用程序见解的实时流中看到 Azure SQL 的日志 例
  • 在 Visual Studio 中查看 TFS 服务器端更改,无需获取最新版本

    在 Visual Studio 2010 中 我希望能够查看其他团队成员已签入的更改 而无需实际执行获取最新 这将覆盖本地文件 有没有办法对批量文件执行此操作 而不是选择每个文件并将其与服务器版本进行比较 我使用 查看历史记录 窗口 然后选
  • SQL Server在查询执行后不释放内存

    我想我在这里有一个很多人可能遇到过的基本问题 当我在 SQL Server 中运行查询时 它将在内存中加载查询执行所需的所有数据 例如 如果存在联接 那么它将从这两个表加载必要的数据 但是当查询完成执行内存时SQL Server 消耗的数据
  • 如何删除列表中的重复值? [复制]

    这个问题在这里已经有答案了 可能的重复 如何从 Python 列表中删除重复项同时保持顺序 https stackoverflow com questions 480214 how do you remove duplicates from
  • 如何在c#中使用net user

    我正在尝试将 net user 与 c 一起使用 System Diagnostics ProcessStartInfo proccessStartInfo new System Diagnostics ProcessStartInfo n
  • 为什么map.insert()方法会调用复制构造函数两次?

    我正在创建自定义类Node为了使用二叉树实现map
  • 使用 gevent 在应用程序上下文之外工作的 Flask 蓝图

    我正在尝试通过 Flask mail 使用 gevent 在 Flask 中异步发送电子邮件 我正在 在应用程序上下文之外工作 我知道 app app context 但我无法让它与我的设置一起使用 我的应用程序是使用这样的应用程序工厂创建
  • Flutter:酒吧失败

    Flutter 项目向我显示警告 Packages get has not been run以及建议的解决方案 获取依赖项 升级依赖项 Ignore 正如建议的Darky https stackoverflow com users 8394
  • PHP 正则表达式修复被黑的 WordPress 网站

    我有一个客户安装了多个 WordPress 但他没有保持最新状态 结果 他被黑了 当我试图找出黑客是如何进入并永久解决问题时 我正在尝试创建一个脚本来快速 自动地修复它们 我找到了这个脚本 它可以满足我的要求 http designpx c
  • Yml配置文件与Spring boot的“继承”

    我在网上找不到直接答案 Spring Boot 的 yml 文件是否相互 继承 我的意思是如果我有 application yml其中有 server port 80 host foo and application profile1 ym
  • 在 HTTPS 而不是 HTTP 中启动 React 应用程序

    我想知道如何启动一个使用 https 而不是 HTTP 中的 create react app 命令制作的 React 应用程序 使用根 SSL 证书之类的东西 生成密钥 openssl genrsa des3 out rootCA key
  • 在 C# 中使用逗号和小数格式化数字

    我需要显示一个带有逗号和小数点的数字 例如 情况 1 十进制数是 432324 没有逗号或小数点 需要将其显示为 432 324 00 不 432 324 情况 2 十进制数是 2222222 22 没有逗号 需要将其显示为 2 222 2
  • 用 Chronos 取代 Celerybeat

    成熟到什么程度Chronos http airbnb github io chronos 它是像 celery beat 这样的调度程序的可行替代品吗 现在 我们的调度实现了一个定期的 心跳 任务 该任务检查 未完成的 事件 并在过期时触发
  • 无法锚定到不是父级或同级 QML QtQuick 的项目

    我正在使用 QML 开发 python 桌面应用程序 我的 QML 文件中有这个 SplitView anchors fill parent orientation Qt Horizontal Rectangle color 272822
  • 如何查找 DICOM 研究中的图像数量?

    是否可以通过读取该研究中文件的 DICOM 标头来查找 DICOM 研究中的图像数量 我正在开发一个 Java 应用程序 该应用程序接收来自不同来源的 DICOM 研究 我只是想检查是否已完全收到研究 不幸的是 我不能依赖阅读 DICOMD
  • 如何在 Node CLI 程序中使用 babel?

    我正在 Node 中编写一个小型 CLI 工具 并希望使用 ES6 来实现 index js 看起来像 usr bin env node require babel register module exports require app 我