我不确定是什么导致这种情况,但jquery-ui
似乎无法在优化后发挥作用。
没有优化,项目运行良好。 $
包含$.ui
。 (让我们称之为发展)
优化后,依赖jquery-ui
的功能失败,因为$.ui
不存在。
我一直在处理填充程序并需要几个小时,但结果总是相同的(或更糟糕的是,$
甚至无法正常工作,尽管它仍适用于非优化版本。 / p>
我错过了什么样的逻辑?
requirejs.config({
baseUrl : 'js',
waitSeconds : 10,
urlArgs : 'cache='+Date.now(),
paths: {
"conf" : "remix/config",
"jquery" : "lib/jquery",
"jqueryUi" : "lib/jquery.ui",
"domReady" : "lib/domReady",
"bootstrap" : "lib/bootstrap",
"jsviews" : "lib/jsviews"
},
// I've had many configurations.
// Basically, develop almost always works, optimized never works.
shim: {
"jqueryUi" : {
deps : ['jquery']
},
"jsviews" : {
deps : ['jqueryUi']
},
"bootstrap" : {
deps : ['jsviews']
}
}
});
require(['domReady!', 'jsviews', 'jqueryUi', 'bootstrap'], function() {
console.log($);
// Develop: $.ui exists
// Optimized: $ exists, $.ui does not.
// (And jsviews only in some modules.)
});
答案 0 :(得分:-1)
根据回答:https://stackoverflow.com/a/17536078/2463365并参考教程:Load jQuery UI with requireJS。
我刚刚添加了exports: '$'
shim: {
"jqueryUi" : {
exports : '$',
deps : ['jquery']
},
它有效。