[英]How does AMD (require.js) handle multiple classes in a single non-amd js file?
我正在使用MootoolsMore庫中的一堆組件,這些組件都被編譯成一個.js文件。 有沒有一種方法可以在墊片中定義一次庫並可以訪問其中的所有類? 以下操作無效,但是我該怎么做?
shim:{
mootoolsMore:{
deps : ["mootools"]
exports : ["Slider", "Sortables"]
}
}
// then inside my module I could access the Slider component like so
define( function(require) {
var Slider = require('mootoolsMore').Slider
不需要僅用於RequireJS的“填充”功能。 您可以只使用標准的AMD loader API:
require(['js!path/to/MooToolsCore.js'], function(){
// nesting in order to insure that Moo Core runs first
require(['js!path/to/MooToolsMore.js'], function(){
// Your Slider and Sortables will be in global.
// just use them.
window.Slider(/* ... */)
})
})
注意,RequireJS不需要“ js!”。 插件需要顯式聲明,但只能查看文件的擴展名。 如果是“ .js”,它將通過“ js”插件運行文件。 這是非標准行為(與AMD規范中不同),但是在RequireJS上,您應該能夠替換如下代碼:
['js!path/to/MooToolsMore.js']
有了這個:
['path/to/MooToolsMore.js']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.