问题标签 [esbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
976 浏览

reactjs - EsBuild StartService 替换

我是 esBuild 和 ReactJS 的新手,我决定按照 guid 构建一个自定义 CLI Transpiling 应用程序。我到了在 textarea 中输入文本但在客户端的控制台上出现以下错误消息主机版本“0.8.27”与二进制版本“0.9.0”不匹配的点。我知道我使用的是旧版本,我确实尝试通过查看文档来首先找到解决问题的方法,因为他们已经完全抛弃了新版本上的 startService() 方法。但是我找不到任何可能的解决方案来解决我的问题,有没有知识的人可以帮助我解决问题。这是我必须开始转译的代码:

0 投票
1 回答
745 浏览

esbuild - 无法解析 esbuild 入口点

以下 esbuild CLI 命令有效:
esbuild server/**/* --platform=node --tsconfig=tsconfig.server.json --outdir=dist

但是如果我创建一个配置文件并使用node esbuild.js命令执行它,它就不起作用。该错误表明它无法解决server/**/*

esbuild.js

我不明白为什么它不像 CLI 命令那样工作。

0 投票
0 回答
24 浏览

esbuild - 当目标是 es2020 时,类是使用 '_'(下划线)前缀生成的,但在没有任何目标的情况下也能正常工作

我的项目有带有私有变量的类。但是,由于一些浏览器还不支持它们,所以我设置了两个单独的构建,一个针对 es2020,一个不支持(默认为 esnext)。我看到 es2020 目标中的某些类是使用 '_' 前缀生成的。就像是

var _x = 类 {...} var x = _x;

这仅适用于某些类,而不适用于其他类。有没有办法通过设置或避免可能触发这种情况的特定编码模式来防止这种情况发生?

另外,我希望看到的常规语法

类 x { }

而不是'var x = class ...';还有什么方法可以实现吗?

0 投票
1 回答
393 浏览

amazon-web-services - 使用 AWS CDK 捆绑 lambda docker 代替 esbuild / debian WSL2

在我的 WSL2 中工作时尝试将 lambdas 与 esbuild 捆绑时遇到 cdk 问题 debian
esbuild 安装为全局 npm 包以及我的 cdk 项目的 devDependencies

lambda 定义示例

每次我尝试部署时,检查差异,cdk 尝试将 lambdas 与 docker 而不是 esbuild 捆绑在一起。
我在这个堆栈上工作了一段时间,一切都很好,直到我从远程容器切换到 WSL2 来管理我在 vscode 中的开发环境。

docker 捆绑起来真的很慢,并且为已经部署的没有代码更改的 lambda 创建了差异。
知道如何解决这个问题吗?

编辑
与 Ubuntu-20.04 WSL2 相同的问题

0 投票
1 回答
905 浏览

javascript - 当“捆绑”关闭时,esbuild 不捆绑内部文件导入

考虑这个非常做作的 npm 包:

想象一下,我们想要一个这样的esm构建。

  • 如果我们设置esbuild为“bundle”,外部clone和内部calculate导入都将在生成的文件中结束。(这很酷,我想要它来iife构建)。
  • 如果我们设置esbuild不“捆绑”,外部clone和内部calculate都不会最终出现在生成的文件中。(这不酷,我还想calculate捆绑)。

在 Rollup 中,这种意义上的“捆绑”仅适用于外部导入;默认情况下,internal-ones 都放在一个文件中。

您知道如何设置esbuild为仅包含内部文件导入吗?要得到:

我只是想制作一些esm/ cjsnpm 包构建。

SO中的其他问题是不同的:这个问题是将多个文件连接成一个。在这里,我们只是试图复制 Rollup 的行为,包括本地导入但不包括外部导入,就像在普通的 npm 包中一样。谢谢你。

0 投票
1 回答
237 浏览

javascript - 在 IIFE 导出的方法中调用方法

我有一个脚本,我想使用 JS 模块公开一个函数,这个脚本是使用 esbuild 编译的。

预编译文件 (index.mjs)

esbuild 任务

导出的代码(我注意到该函数在 IIFE 中) 在此处输入图像描述

html中的代码:

错误:

我的项目的来源在这里

0 投票
0 回答
29 浏览

typescript - TypeScript 编译器查找导入函数的所有调用(+ 类型参数和参数)

我目前正在尝试为 esbuild 构建类型保护生成器库/插件,但是我的 typescript 编译器 API 知识不足以解决我的问题。

我的库导出了一个名为的函数isA,该函数接受一个类型参数和一个对象:

然后 esbuild 插件应该找到该isA函数的所有引用/调用并将其转换为类型保护。

我的问题是:有没有一种简单的方法可以找到isAAST 中的所有调用并获取(/解析)它们的类型参数和参数?

提前致谢!

0 投票
0 回答
167 浏览

styled-components - 是否有人致力于让样式化组件 CSS 道具与 esbuild “本机”一起使用?

我很想尝试使用 esbuild 构建我们的一些应用程序,它的速度要快得多……比如 300 毫秒而不是 30 秒或更长时间用于生产。

一切正常……除了我们为样式化组件使用 css prop API 的地方。我想这很明显,因为 css prop API 仅使用 Babel 插件启用样式组件 - 我并没有尝试将 Babel 带入我的 esbuild ...build。

在我什至考虑开始编写 esbuild 插件以开始操作文件内容之前 - 还有其他人来过这里吗?非常感谢任何帮助或建议。

0 投票
2 回答
325 浏览

express - 在 esbuild 中重新启动 express 服务器

我正在尝试express使用esbuild. 这些是我的代码

esbuild.config.js

插件参考:https ://github.com/evanw/esbuild/issues/1258#issuecomment-834676530

如果您要运行此应用程序,我最初会工作,但是当您更改代码时,即使您刷新页面,服务器也不会更新。

我不确定我在哪里犯错,请帮助

0 投票
1 回答
87 浏览

aws-lambda - 在 NodejsFunction 构造目标包中包含 proto 文件

我有一个 lambda 函数,它应该返回一个序列化的协议缓冲区有效负载。为此,我需要myobject.proto与 lambda 处理程序位于同一目录中。

对于函数本身,我使用 AWS CDK 构造NodejsFunction

如何在生成的包中包含 proto 文件或将其提供给 lambda 函数?