【发布时间】:2015-06-30 15:39:11
【问题描述】:
我正在使用 jquery 1.11.3、require.js 2.1.18 和 r.js 2.1.18
我想将 jquery.js 放在外部以使用浏览器缓存。
//file js/main.js
require.config({
baseUrl: 'js',
paths: {
'jquery': '//cdn.bootcss.com/jquery/1.11.3/jquery.js'
},
shim: {
'p': ['jquery']
}
});
require(['jquery', 'p'], function($) {
alert(222);
});
//file js/p.js
//this is an jquery plugin which does not support AMD
alert($().jquery);
//file build.js
({
baseUrl: "js",
name: "main",
out: "app.js",
paths: {jquery: "empty:"}
})
会报错
`Uncaught ReferenceError: $ is not defined(anonymous function) @ app.js:1`
但是下面的代码可以工作,alert("1.1.13") 然后alert(222)
//file js/main.js
require.config({
baseUrl: 'js',
paths: {
'jquery': 'jquery.js'
},
shim: {
'p': ['jquery']
}
});
require(['jquery', 'p'], function($) {
alert(222);
});
//file js/p.js
alert($().jquery);
//file build.js
({
baseUrl: "js",
name: "main",
out: "app.js",
paths: {jquery: "jquery"}
})
第一段代码有什么问题?谢谢~
【问题讨论】:
标签: javascript jquery requirejs r.js