我正在尝试将一些遗留的js代码包装在模块中,以便可以使用RequireJS加载它们。
我有三个jQuery插件,我们称之为a,b和c。
因此,只要需要插件a,需要加载的jQuery就是版本1.4.2。 我的require.config看起来像:
require.config({
paths:{
"jquery": "libs/jquery.1.9.1.min",
"jquery1-4-2" : "libs/jquery1.4.2.min"
});
插件的定义如下:
plugin a:
define(["jquery"], function($){ (...) });
plugin b:
define(["jquery1-4-2"], function($){ (...) });
plugin c:
define(["jquery", "a","b"], function($){ (...) });
如何配置此方案,以便如果任何插件需要某个版本的jQuery,而其他插件不需要版本,那么只加载某个版本?
提前致谢。
答案 0 :(得分:-2)
如果你真的使用jquery 1.4这个版本不支持Requirejs,你应该定义de shim配置,但是你会遇到冲突,因为jquery全局定义$ object,所以它会覆盖任何现有的全局$变量。 我认为你可以使用jQuery.noConflict来避免这个问题。