因此,这是我的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时,得到的是未定义的,没有其他错误。

有任何想法吗?怕我缺少明显的东西。

最佳答案

我在源代码注释中找到了requirejs的用法,但是文档中没有描述。这是例子。

define(['soundManager2'], function(SoundManager) {
    var sound = SoundManager.getInstance();
    sound.setup({
      useHTML5Audio: true,
      idPrefix: '',
      onready: function() {},
      ontimeout: function() {}
    });
    sound.beginDelayedInit();
})


javascript - 使用requirejs amd shim加载soundmanager2,日志未定义-LMLPHP

关于javascript - 使用requirejs amd shim加载soundmanager2,日志未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28821542/

10-15 00:01