gpt4 book ai didi

jquery - 使用 requirejs 和 jquery,而不破坏全局 jquery?

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

我是第一次在项目中使用 requirejs。我正在一个已经有很多 Javascript 的环境中工作,并且我正在寻找干净的方法来引入我自己的代码。

我遇到的问题是我似乎找不到可以加载且不会破坏现有 jQuery 的 jQuery 模块。

令我惊讶的是,甚至 require-jquery.js 也引入了 jQuery 的全局版本。有没有一种方法可以将 jQuery 作为模块加载而不引入任何全局变量?

最佳答案

jQuery 1.7 支持 AMD 加载。但是,诀窍是避免模块命名冲突,因为 jQuery 将其自己的模块名称硬编码为“jquery”。如果您将另一个模块定义为“jquery”(例如,在 requirejs 配置中的“paths”属性中),它将导致上述冲突。

要在 requirejs 应用程序范围内加载 jQuery,请定义一个模块,例如“jquery-loader”,当您想要加载 jQuery 时,通过“jquery-loader”来执行:

define(['path/to/jquery.min'], function () {
return jQuery.noConflict(true);
});

requirejs 会“缓存”您对 jQuery 的引用,这样 noConflict 只会在第一次加载 jquery-loader 时运行。

关于jquery - 使用 requirejs 和 jquery,而不破坏全局 jquery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4858431/

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