我花了很长时间来梳理文档,示例和问题......但似乎仍无法解决我的问题。
我有例如:
require.config({
paths: {
"jquery": "lib/require-jquery",
"underscore": "lib/underscore.min",
"backbone": "lib/backbone.min",
"tooltipster": "lib/tooltipster",
"perfectScrollbar" : "lib/perfect-scrollbar",
"otherstuff": "lib/otherstuff",
...
},
shim: {
backbone: {
'deps': ['jquery', 'underscore'],
'exports': 'Backbone'
},
underscore: {
'exports': '_'
},
tooltipster: {
'deps': ['jquery'],
'exports': 'Tooltipster'
},
perfectScrollbar: {
'deps': ['jqueryMousewheel'],
'exports': 'PerfectScrollbar'
},
otherstuff: {
'deps': ['jquery', 'ajaxQueue', 'tooltipster', 'perfectScrollbar'],
'exports': 'otherstuff'
},
...
}
});
我已成功运行命令r.js -o build.js
,并且所有文件都成功缩小为我的文件。该应用程序似乎在游戏中加载和运行直到......
我似乎无法弄清楚我错过了什么。除了在路径和垫片中使用tooltipster / perfectscrollbar之外还有什么必要?我的模块也定义如下:
define(['jquery', 'underscore', 'backbone', 'tooltipster', 'perfectscrollbar', ...], function($, _, Backbone, Tooltipster, PerfectScrollbar, ...)
我希望有足够的示例代码,我一直在反对google,stackoverflow和我的IDE,现在已经有一段时间了,我不知所措。
答案 0 :(得分:0)
答案最终成为一个古老的问题,需要两次jquery。
问题在于,因为我使用了require-jquery.js
,所以
<script data-main="js/dist/main" src="js/lib/require-jquery.js?v=@VERSION@"></script>
加上
paths: {
"jquery": "lib/require-jquery",
...
}
导致jquery被加载两次。
修复是使用此行代替:
paths: {
"jquery": "empty:",
...
}