requireJS с плагинами загрузки файлов

В requirejs мы можем установить имя для js через это:

requirejs.config({
    paths: {
        'jquery': '//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.0/jquery.min.js'
    }
});

И используйте это с этим:

requirejs(['jquery'],function ($) {
    //loaded and can be used here now.
});

Но для такого плагина, как fileuploads, требуется несколько js-файлов. Их документ показывает, как использовать его с requirejs: https://github.com/blueimp/jQuery-File-Upload/wiki/How-to-use-jQuery-File-Upload-with-RequireJS

Но как мне собрать их всех в одно имя?

requirejs(['jquery','fileupload'],function ($) {
    //all fileupload js has been loaded and ready to use
});

Так что, когда мне потребуется загрузка файла, он загрузит все необходимые файлы js, не требуя их один за другим.

Спасибо.

1 ответ

Решение

Вы можете создать метамодуль, который импортирует все необходимые ресурсы и объединяет их вместе, тогда конечные модули становятся транзитивными зависимостями, которые загружаются неявно:

fileupload.js

define(['jquery',
        'js/jquery.iframe-transport',
        'js/jquery.fileupload-ui'
], function () {
  // all needed dependencies loaded
});

Когда вам требуется fileupload Вы гарантируете, что все необходимые зависимости присутствуют.

Другие вопросы по тегам