我正在设置一个 webhook 接收器只是为了学习入门知识。我已经运行了许多与节点配合良好的测试。现在,我尝试将此接收器放在公共托管页面上,这样我就不必始终保持个人计算机处于开启状态。但是当我在浏览器中打开文件时,出现错误
Uncaught ReferenceError: require is not defined
。如果我只是将“require”行更改为“import”,就能解决问题吗?
另外,如果“require”不能在浏览器中使用,那么什么时候合适,什么时候我应该从一开始就避免使用它?
我已经尝试过 esbuild,但这给了我一组全新的错误,我想知道在我进一步走这条路之前是否有更有效的解决方案?
如果我只是将“require”行更改为“import”,就能解决问题吗?
还有其他细微差别,但我建议尝试一下!
另外,如果“require”不能在浏览器中使用,什么时候合适,什么时候我应该从一开始就避免使用它?
新代码不应使用
require()
。它只是服务器端/节点,import
/ ESM 是未来。
我已经尝试过 esbuild,但这给了我一组全新的错误,我想知道在我进一步走这条路之前是否有更有效的解决方案?
esbuild、webpack、vite 等工具可以解析 Node.js 样式代码并将其转换为单个浏览器兼容的文件。所以,是的,如果您不想更改代码,这是一个选项。如果您想避免捆绑程序,那么 ESM 可能是唯一的选择