所以这里是我的main.js文件(为了清楚起见,我删除了所有其他脚本):
require.config({
paths: {
'soundmanager2': '../libs/soundmanager2/soundmanager2',
},
shim: {
'soundmanager2': {
'exports': 'soundManager'
}
}
});
然后我像这样加载库:
define(['jquery', 'underscore', 'backbone', 'utilities/events', 'utilities/helpers', 'soundmanager2'],
function($, _, Backbone, events, h, soundManager){
var TrackModel = Backbone.Model.extend({
initialize: function() {
console.log(soundManager);
}
});
return TrackModel;
}
);
正在下载脚本 - 但是当我记录soundManager时,我得到了未定义,没有其他错误。
有什么想法吗?害怕我错过了一些明显的东西..
答案 0 :(得分:1)
我在源代码注释中找到了requirejs的用法,但是文档没有描述。这是一个例子。
define(['soundManager2'], function(SoundManager) {
var sound = SoundManager.getInstance();
sound.setup({
useHTML5Audio: true,
idPrefix: '',
onready: function() {},
ontimeout: function() {}
});
sound.beginDelayedInit();
})
答案 1 :(得分:0)
这是soundmanager2版本的一个问题 - 它已经出现了AMD,但出于某种原因我无法将其导出。我恢复到早期版本,使用垫片,并修复它!