当使用esbuild时,我可以将jQuery导入到我的bundle中。导入jQuery后,我可以调用它的函数。
但是,如果我还导入了一个依赖jQuery的文件,那么一旦页面加载,我就会在控制台中看到“jQuery not defined”。
所以看起来jQuery可以被导入和使用,但是依赖于jQuery的文件是不可用的:它们看不到jQuery对象。
最初,我试图只导入jQuery,然后导入依赖于它的脚本。这会产生错误:
import jQuery from './jquery-3.7.1.js';
import './otherFile.js';
字符串
我尝试的下一件事是在导入jQuery之后,在导入另一个脚本之前,立即使jQuery全局可用,但这也会导致错误:
import jQuery from './jquery-3.7.1.js';
window.jQuery = jQuery;
import './otherFile.js';
型
那么,当我使用esbuild时,我如何才能使jQuery对依赖它的文件可用呢?
我想这个问题也会延伸到其他库:如果我使用esbuild,我如何允许脚本使用它们的依赖项?
2条答案
按热度按时间mbskvtky1#
我认为问题出在
otherFile.js
上,也许文件使用全局jquery,但导入jquery是局部var。你可以使用脚本导入解决这个问题。像
字符串
zrfyljdw2#
导入的作用域是模块,而不是全局变量。
全局最好首先避免。
每个想要使用jQuery的模块都应该自己导入它。