我正在测试require.js以获得更加结构化的方式来加载库依赖项。但我似乎无法获得使用jQuery的基本示例。我能看到的唯一不同的例子就是我的JS库位于不同的子域中。
代码:
<script src="http://scripts.test.com/arkon-main.js"></script>
<script src="http://scripts.test.com/require.js"></script>
ARKON-main.js
var require = {
baseUrl: 'http://scripts.test.com',
paths: {
page: 'http://mypage.test.com/script/page/',
jQuery: 'jquery',
},
shim: {
'jQuery': {
exports: '$'
}
}
};
页面模块(这是为JS提供服务的PHP代码,因此是URL):
require(["jQuery"], function($) {
$(document).ready(function() {
alert('YES');
});
});
在HTML中:
<script>require(["page"]);</script>
在我的网络&#34;在Chrome浏览器中看起来(几乎)很好,我可以看到arkon-main.js,require.js,页面模块和jquery成功加载。但是:
我的问题是在jQuery之前加载页面会导致该部分失败。我不明白为什么,因为我希望加载jQuery的require然后在里面运行代码?
我尝试过不同版本以及requirejs网页上的示例,但我无法在我的环境中使用它。我只想要一个基本的设置,我可以使用require来加载库,因为当我加载新页面时(按正确的顺序),它们是必需的。
建议?
答案 0 :(得分:0)
jQuery必须以jquery
的形式请求,所有低级别的上限,因为名称jquery
在jQuery代码中是硬编码的。 (不幸的是,但就是这样。)另外,如果你从1.9.x开始使用jQuery(甚至可能是早期版本),你一定不能指定一个垫片。
这两个问题只会误导RequireJS,可能是造成问题的原因。