明天晚上好!
我花了很多天时间寻找类似的问题和答案,但找不到(或者可能理解)任何类似的问题。
摘要
我正在为当前使用jQuery 1.4.2
的客户端添加一系列页面。我受限于现有代码必须按原样保留,并且不能充分利用它。
Yadda,yadda,yadda。到目前为止,我构建的所有内容都使用RequireJS 2.1.9
,jQuery 1.10.2
和我自己的模块。我已经创建了一个jQuery加载器模块,它调用$.noConflict(true)
以及所有好东西以确保我的模块得到1.10.2
并且我不会干扰全局必需的1.4.2
。
以下是我当前RequireJS配置的类似示例:
{
baseUrl: '/some/path',
paths: {
'jquery': 'lib/path/jquery',
'jquery-loader': 'lib/path/jquery-loader',
'jquery-validator': 'lib/path/jquery-validator'
},
map: {
'*': {
'jquery': 'jquery-loader'
},
'jquery-loader': {
'jquery': 'jquery'
}
},
shim: {
'jquery-validator': ['jquery']
}
}
问题
有些同事需要在我的新代码中使用一些插件,即jquery-validator
。
我的问题是,使用上面的当前配置,jquery-validator
,这是一个非AMD插件设置为全局可用的jQuery(1.4.2),而不是我的jQuery(1.10.2),尽管整个设置。
我宁愿所有新代码都不必使用全局可用的jQuery来获取验证器插件。
问题
我不知道如何才能按照我的意愿去实现这一目标,但我的问题是:实际上是否有任何方法让我无需进入{{ 1}}并将其包装在一个define调用中?