Можно ли остановить requireJS от автоматического добавления расширения .js?

Я использую requireJS для загрузки скриптов. Она имеетэта деталь в документах:

The path that is used for a module name should not include the .js extension, since the path mapping could be for a directory.

В моем приложении я сопоставляю все мои файлы сценариев по пути конфигурации, потому что они динамически генерируются во время выполнения (мои сценарии начинают жизнь какorder.js но стать такими вещамиorder.min.b25a571965d02d9c54871b7636ca1c5e.js (это хеш содержимого файла, для очистки кеша).

В некоторых случаях require добавит второе расширение .js в конец этих путей. Несмотря на то, что я генерирую динамические пути на стороне сервера, а затем заполняю путь конфигурации, мне нужно написать дополнительный код JavaScript, чтобы удалить.js расширение из проблемных файлов.

Читая документы requireJS, я действительно не понимаю, почему вы хотите, чтобы отображение пути использовалось для каталога. Означает ли это, что можно каким-то образом загрузить файлы всего каталога за один вызов? Я не понимаю.

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

Благодарю.

ОБНОВЛЕНИЕ: добавлено несколько примеров кода по запросу.

Это внутри моего HTML-файла (это проект Scala, поэтому мы не можем записать эти переменные непосредственно в.js файл):

foo.js.modules = {
    order               : '@Static("javascripts/order.min.js")',
    reqwest             : 'http://5.foo.appspot.com/js/libs/reqwest',
    bean                : 'http://4.foo.appspot.com/js/libs/bean.min',
    detect              : 'order!http://4.foo.appspot.com/js/detect/detect.js',
    images              : 'order!http://4.foo.appspot.com/js/detect/images.js',
    basicTemplate       : '@Static("javascripts/libs/basicTemplate.min.js")',
    trailExpander       : '@Static("javascripts/libs/trailExpander.min.js")',
    fetchDiscussion     : '@Static("javascripts/libs/fetchDiscussion.min.js")'
    mostPopular         : '@Static("javascripts/libs/mostPopular.min.js")'
};

Тогда внутри моегоmain.js:

requirejs.config({
    paths: foo.js.modules
});

require([foo.js.modules.detect, foo.js.modules.images, "bean"], 
    function(detect, images, bean) {
        // do stuff
});

В приведенном выше примере я должен использовать строку «bean» (который относится к требуемому пути), а не мой прямой объект (как другие используютfoo.js.modules.bar) иначе получаю доп.js прилагается.

Надеюсь, это имеет смысл.

Ответы на вопрос(3)

Ваш ответ на вопрос