gpt4 book ai didi

javascript - Browserify - 全局变量

转载 作者:行者123 更新时间:2023-12-03 09:25:37 24 4
gpt4 key购买 nike

我对 Browserify 默认情况下的工作方式有点困惑。

如果我有一个定义全局变量的脚本,例如在 jQuery (window.$) 中,并且我调用 require('jquery'),则不会'该变量会自动分配给全局范围吗?在这种情况下,为什么我需要手动将该变量分配给代码中的全局范围(即 window.$ = require('jquery'))?

最佳答案

当您使用 require(...) 引入 jQuery 时,它最终会像任何其他模块一样在 Browserify 的封闭范围内进行定义。您可以将其分配给所显示的全局变量,但建议使用它的方法是在每个需要 jQuery 的模块的顶部添加 require() ...就像您对任何其他模块所做的那样。

因此,您的依赖模块将添加以下内容,而不是使用全局 $ 变量:

var $ = require('jQuery');
<小时/>

编辑:如果您异步加载 jQuery,您将遇到额外的复杂情况,即在异步加载的脚本可用之前,会积极评估 require(...) 语句。我最近遇到了这个问题并解释了我在这里提出的解决方案:How to use my own version of jQuery with browserified modules

关于javascript - Browserify - 全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31688447/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com