我正在尝试使用 require 在 noConflict 模式下加载 jquery
require.config({
paths: {
'jquery': 'libs/jquery-req',
underscore: 'libs/underscore',
backbone: 'libs/backbone'
},
shim: {
jquery: {
init: function() {
console.log('jq init');
var jq = this.jQuery.noConflict(true);
jq.support.cors = true;
return jq;
},
exports: '$'
},
backbone: {
deps: ['underscore', 'jquery'],
init: function() {
console.log('b init');
},
exports: 'Backbone'
},
underscore: {
exports: '_'
}
}
});
并像这样使用它:
define([
'jquery',
'underscore',
'backbone'
], function(jq, _, Backbone) {
console.log(jq);
var initialize = function() {
// Router.initialize();
};
return {
initialize: initialize
};
});
不幸的是,似乎从未调用过 shim.jquery.init 函数。有人可以帮我理解为什么吗?当我重命名 jquery -> jquery-reg 时奇怪的是它似乎可以工作,但它需要更改每个文件中定义的依赖项。