gpt4 book ai didi

requirejs - SoundManager2 和 require.js

转载 作者:行者123 更新时间:2023-12-05 00:33:09 24 4
gpt4 key购买 nike

SoundManager2 flash 组件需要一个特定的全局 JavaScript 变量 (soundManager) 才能出现在全局范围内。通过这种方式,Flash 播放器与 SoundManager2 JavaScript API 进行通信。

问题是,当您想使用 AMD (require.js) 构建 Web 应用程序时,您必须做出妥协并让这个全局变量存在。

有什么办法不破坏 AMD 构建包括 SoundManager 在内的应用程序的方式?

最佳答案

使用 RequireJS 垫片配置 将您的非 AMD 库包装为导出全局变量的模块:
http://requirejs.org/docs/api.html#config-shim

requirejs.config({
paths: {
'soundmanager2' : 'some/path/soundmanager2'
},
shim: {
'soundmanager2': {
exports: 'soundManager'
}
}
});

然后,像任何其他依赖项一样需要 SoundManager2 shim,并在您自己的模块代码中使用它:
define(['soundmanager2'], function(soundManager) {
soundManager.setup({ ... });
soundManager.beginDelayedInit();
// The following may help Flash see the global.
window.soundManager = soundManager;
return soundManager;
});

关于requirejs - SoundManager2 和 require.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12404023/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com