Как разрешить несколько файлов конфигурации RequireJS из Webjars

В приложении spring-boot я получил несколько веб-файлов (в основном файлы javascript, css и ресурсов в пакетах jar), все они указаны в файле maven pom.

пом.xml

<dependencies>
...
    <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>requirejs</artifactId>
        <version>2.1.16</version>
    </dependency>
    <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>angularjs</artifactId>
        <version>${angularjs.version}</version>
    </dependency>
...
</dependencies>

Spring-boot помогает, раскрывая каждый путь сценария. Например, начальная загрузка доступна с использованием

webjars/bootstrap/bootstrap-version/bootstrap.js

Хорошо, это довольно круто, теперь я могу получить каждый скрипт в своих файлах html и js.

Но вот в чем дело: у каждого из этих веб-файлов есть собственный файл webjars-requirejs.js с настройками для отображения модулей и разрешения путей и зависимостей.

Я считаю, что его цель - использовать, а не копировать в пользовательский файл require.config некоторых пользователей.

webjars/bootstrap/версия/webjars-requirejs.js

/*global requirejs */

// Ensure any request for this webjar brings in jQuery.
requirejs.config({
paths: { 
    "bootstrap": webjars.path("bootstrap", "js/bootstrap"),
    "bootstrap-css": webjars.path("bootstrap", "css/bootstrap")  
  },
  shim: { "bootstrap": [ "jquery" ] }
});

Вопрос

Заметив метод webjars.path(), я не могу понять его область действия и то, как он будет разрешен, если я получу несколько файлов webjars-requirejs.js с их require.config() из моего собственного пользовательского require.config().
Как я могу манипулировать эти файлы webjars-requirejs.js в одном пользовательском файле javascript?


person maljukan    schedule 07.03.2015    source источник


Ответы (1)


Файлы webjars-requirejs.js являются устаревшими артефактами. Новые метаданные RequireJS находятся в файле pom.xml WebJar. В библиотеке webjars-locator есть несколько утилит RequireJS, упрощающих работу с этими метаданными. Документы WebJar содержат некоторые сведения о том, как это использовать.

person James Ward    schedule 08.03.2015
comment
Спасибо, @James, ответ пришел прямо из источника :) Я проверю webjars-locator, чтобы посмотреть, что он может предложить, даже без некоторых более полезных инструментов, пока это довольно удивительно. Я напишу какое-нибудь руководство после того, как настрою все с помощью maven и gradle в проекте spring boot, чтобы внести свой вклад в другой конкретный пример использования. Выдающийся работяга... - person maljukan; 08.03.2015
comment
Спасибо! Буду рад любому вкладу, который вы могли бы внести в документы. Было бы здорово иметь больше работающих примеров приложений и руководств. - person James Ward; 09.03.2015
comment
Я буду рад внести свой вклад, свяжусь с вами в ближайшее время. - person maljukan; 09.03.2015