我将我的应用程序重构为使用RequireJS(在Play Framework中使用sbt-web抽象,但这不是紧密相关的)。
首先,我只是尝试使用填充程序加载FineUploader,因为它与AMD不兼容,但是我遇到了“未定义MegaPixImage ”错误。这对我来说很奇怪,因为FineUploader没有依赖项(因为内置了第三方的东西)。
但是在看到这篇Stack Overflow帖子之后,我分别下载了该库,并以此方式(在CoffeeScript中)设置了RequireJS配置:
requirejs.config(
paths:
megapiximage: './megapiximage'
fineUploader: './custom.fineuploader'
shim:
fineUploader:
exports: 'fineUploader'
deps: ['jquery', 'megapiximage' ]
)
require(['./main'], (main) ->
require(['fineUploader', './myfile'])
return
)
但是,即使该库与AMD兼容,我仍然会遇到相同的错误。
感谢您对我应如何设置RequireJS配置的任何见解。
FineUploader包引用了“ MegaPixImage”变量,因此您需要使其可用。我认为以下应该起作用:
require(['fineUploader', 'megapiximage'], function(fineUploader, MegaPixImage) {
// initialize your fineuploader here
})
请注意,您实际上已经两次包含了MegaPixImage库。因此,我决定将FineUploader排除在RequireJS设置之外,并将其添加为HTML中的单独javascript文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句