问题标签 [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.
typescript - esbuild + knex:找不到模块'../../dialects/mysql/index.js'
我目前正在尝试将一些代码从 javascript 迁移到 typescript。此代码使用knex包。我可以使用 构建和运行它tsc
,但我想esbuild
改用它(为了更快地构建)。
我用:
但是当我尝试运行编译后的代码时,我得到:
我不知道这个dialect
目录是什么,也找不到任何关于它的文档。我看了一下这个 SO question,但无法真正理解其中的代码,并且错误似乎更多关于browserified
.
这是我用来重现错误的代码:
有趣的是,仅使用mysql
包而不knex
使用两者都很tsc
好用esbuild
.
由于某种原因,只有构建esbuild
失败。我首先以为我错过了一个包,我安装了@types/node和@types/mysql,但它并没有解决我的问题。
如果有帮助,我使用以下内容tsconfig.json
:
webpack - 如何使用 SCSS、PurgeCSS 和 LiveServer 设置自定义 ESBuild?
背景:
我有一个Webpack 设置,我使用 PurgeCSS 预处理 SCSS,并使用带有esbuild-loader的实时 HMR 服务器来加速 Webpack 中的编译,但即便如此我的编译时间仍然很慢,我想要 ESBuild 的原始速度并删除 Webpack完全设置。
ESBuild 的基本设置很简单,您可以使用 npm 安装 esbuild 并在package.json中添加以下代码:
并使用以下命令运行它:
这种单行配置将捆绑您的脚本和样式(您可以在 script.js 中导入 style.css)并在 dist 目录中输出文件,但这不允许 ESBuild 的高级配置,例如为您的样式表输出不同的名称和脚本文件或使用插件。
问题:
- 如何使用外部配置文件配置 ESBuild?
- ESBuild 不支持开箱即用的 SCSS。如何配置像esbuild-sass-plugin这样的外部插件,更进一步,如何设置PostCSS及其像Autoprefixer这样的插件?
- 如何使用自动重建设置开发服务器?
- 如何设置 PurgeCSS?
https - esBuild 通过 HTTPS 服务
esBuild 使得通过它自己的开发服务器服务 http 请求变得非常容易,例如
在这种情况下如何启用 HTTPS 服务?我可以让它在端口 443 上服务,但是如何附加自签名证书?
javascript - 使用 ESBuild rails 6 全局设置 actioncable 和 sockjs-node
我和开发团队一直在将我们当前的设置从 webpack 迁移到 esbuild。我们有一些依赖于 actioncable 的咖啡脚本文件。自从删除 webpacker 依赖项/webpack-dev-server 后,Actioncable 已完全停止。有谁知道如何让 actioncable 在窗口级别运行,以便我们的咖啡脚本文件可以访问它?我们使用 sockjs-node 进行 webpack 设置,并且需要使用 esbuild 获得相同的结果。
包.json
esbuild.config.js
应用程序.js
从“actioncable”导入 actioncable
vue.js - Vite 生产构建错误:`...不是 node_modules 的构造函数
我正在尝试使用 Vite 为一个简单的基于 Vue 的项目进行构建,但在实际处理构建时遇到了错误。
我的vite.config.js
文件:
build 命令vite build
运行良好,没有警告,并在文件夹中编译这些文件dist
:
- dist/index.html
- dist/assets/index.83eff058.js
- dist/assets/index.acd5fd56.css
- dist/assets/vendor.96c4e7e1.js(问题文件)
在为我构建的项目提供服务时,我收到这个错误,导致整个事情崩溃并且除了 CSS 之外不加载任何东西:
我已经阅读了 Vite 和 Rollup 文档,真的不知道要寻找什么。这是因为缺少 Babel,还是其他原因?
ruby-on-rails - 无法在 Rails 7 中添加带有顺风的 ant 设计样式表
我使用rails new demo -j esbuild --css tailwind
. 我正在antd
为组件使用包,并希望将 ant 设计样式表与 tailwind 样式表一起使用。
Tailwind有一种方法可以将外部样式表添加到其默认样式中。我使用它并将application.tailwind.css
文件设置为此:
现在,当我运行时./bin/dev
,antd
既没有应用样式,也没有在生成的app/assets/builds/application.css
文件中存在这些样式类。
看起来顺风覆盖了蚂蚁的设计风格。
如果我保留application.tailwind.css
并添加
到我的index.js
根文件,然后才会antd
应用样式并出现在生成的app/assets/builds/application.css
. 但是随后删除了 tailwindcss 类。
我怎样才能在生成的同时拥有蚂蚁设计风格和顺风风格app/assets/builds/application.css
?
react-pdf - 你如何用 esbuild 填充 react-pdf?
如果您今天使用 esbuild 为浏览器捆绑 react-pdf,您将遇到提示您为 platform=node 构建的错误,因为 zlib 和流在浏览器环境中不可用。
我确实找到了一个关于如何在使用 vite 时交换它的对话,但我很好奇其他人是否为 esbuild 创建了一个 shim,它提供了等效的东西
我今天使用的版本:@react-pdf/renderer": "^2.0.21"
编辑
恰好为 esbuild 存在一个节点模块 polyfill,您应该能够将其配置为插件
https://github.com/remorses/esbuild-plugins#readme
npm i -D @esbuild-plugins/node-globals-polyfill
然后使用 esbuild 你可以像这样传递它
https://esbuild.github.io/plugins/#using-plugins
更多在我确认这是端到端工作之后
javascript - 带有edbuild的tailwindcss没有获取类并被覆盖
我想用 React、esbuild 和 tailwindcss 创建工作流。在 tailwind 文档中,他们说除了创建配置文件之外,我还需要将几个 @tailwind 指令放入 src/input.css 并使用以下命令运行编译:
所以我这样做了,结果看起来像是脚手架或 CSS 重置,内部没有实用程序类,而且我希望它与我的自定义 CSS 一起工作,这非常简单,因为在我学习 esbuild 时我做到了还没有使用预处理器,所以我采取了两种方法:
- 我已将 /src/input.css 添加到 esbuild.serve.js 中的 entryPoints 中,如下所示:
但即使这个重置也被我的其他样式表完全覆盖,我收到警告说:
所以我的第二个想法是将这些顺风指令包含到我的主 CSS 文件中,并像这样一起构建它:
但是,结果是在我的 out.css 中我有这些导入,但没有来自顺风的预期 CSS。从这里开始,我不知道该怎么办。这些是我的脚本:
任何帮助将不胜感激,谢谢。
javascript - esbuild 没有编译导入的模块
我正在尝试使用esbuild编译一个非常简单的打字稿代码。
但是esbuild
只编译入口文件。
这是我的设置:
我跑:
编译完成没有错误,如果我现在检查dist
我只得到
却一点痕迹都没有dist/mod1.js
。所以当然代码无法运行并给出错误。
为什么esbuild
不编译所有其他文件mod1.ts
?
我不能--bundle
在我的项目中使用。
reactjs - 如何在纱线工作区的混音运行应用程序中使用本地模块
我有一个yarn
workspace
monorepo
不同的包包含可重用代码的地方。像
@pkg/styles
,
@pkg/ui-components
所有这些包都es modules
(import export statements)
在我的由 webpack 构建的非 ssr 应用程序中使用,就像这样。
例如
现在我需要添加remix-run
到同一个 monorepo 并且一切正常,直到我开始导入这些本地包。我得到这个错误
如果我没记错的话,这是因为esbuild
期望所有内容都node_modules
被预编译。并在转译阶段简单地忽略它们。
我需要告诉我的编译器在编译时考虑我的本地包,这在我们使用时非常容易做到webpack
。但我不确定如何在remix-run
内部使用它和 esbuild。remix-run github 上几乎没有问题,但似乎没有任何帮助。