我是requirejs
的新手,将dropzonejs
(http://www.dropzonejs.com/)作为AMD加载时遇到问题。
我的requirejs
配置是:
requirejs.config({
baseUrl: 'js/MV'
,paths: {
,jquery: '../libs/jquery-latest'
handlebars: '../plugins/handlebars'
,scrolltofixed: '../plugins/scrolltofixed'
,logout: '../logout'
,dropzone: '../plugins/dropzoneAmdModule'
}
});
当我尝试加载
dropzone
模块时function _activateDropzone(){
require(['dropzone'], function(dropzone){
var pippo = new Dropzone({ //..config
});
});
}
它
logs
Uncaught ReferenceError: Dropzone is not defined
即使我正在加载dropzone-amd-module。
有什么建议吗?
最佳答案
使用RequireJS,您必须在回调函数中使用返回值。在您的示例中,您将dropzone
(小写)用作模块的返回值,但是在代码中,您随后将使用Dropzone
(大写)。我认为这应该工作:
function _activateDropzone(){
require(['dropzone'], function(Dropzone){
var pippo = new Dropzone({ //..config
});
});
}
dropzone-amd-module正在检测AMD加载器中正在使用的模块,而不是将Dropzone添加到全局范围,而是将本地值返回到模块加载器。