我正在按照此处描述的示例进行操作:
https://bilalbudhani.com/chokidar-esbuild/
当我这样做时:
node esbuild.config.js --watch
我收到消息:
[ERROR] Invalid option in build() call: "watch"
我不知道为什么会发生这种情况。
“手表”不再是一个参数了吗?
我也做了这个例子:
const path = require('path')
require("esbuild").build({
entryPoints: ["application.js", "client.js"],
bundle: true,
sourcemap: true,
outdir: path.join(process.cwd(), "app/assets/builds"),
absWorkingDir: path.join(process.cwd(), "app/javascript"),
minify: true,
watch: true,
})
.then(() => console.log("⚡Done"))
.catch(() => process.exit(1));
如果我删除“watch:true”行,它可以正常编译。但如果我离开它,我会得到同样的错误:
build() 调用中的无效选项:“watch”
当我这样做时:node esbuild.config.js
总结评论:
esbuild watch
选项。大多数教程和 HowTos 都指向该版本。如果您想像那里描述的那样使用它,请将您的 esbuild 降级到该版本。
更好的选择是使用 esbuild >0.16,它具有内置的 live reload,它使用新引入的 context 结合了 watch 和 serve