合并非 AMD 库

并非所有库都以与 AMD 和 RequireJS 的 define() 功能兼容的方式定义。作者已经通过包含用于配置这些依赖项的 shim 指令来解决这个问题。

一个例子是使用 jQuery UI Layout Plugin。该插件依赖于 jQuery。你可以像这样配置它:

requirejs.config({
    paths: {
        'jquery': '../path/to/jquery.min',
        'jquery.layout': '../path/to/jquery.layout.min'
    },
    shim: {
        'jquery.layout': {
            deps: ['jquery']
        }
    }
});

然后在这样的布局模块中使用它:

define(['jquery', 'jquery.layout'], function ($, layout) {
    $('body').layout();
});